Skip to content

Instantly share code, notes, and snippets.

View Kairi's full-sized avatar
🌴
On vacation

Kairi OKUMURA Kairi

🌴
On vacation
View GitHub Profile
@Kairi
Kairi / parallel_local_script.sh
Last active October 11, 2016 15:18
Do Local Script in remote machines parallelly.
# pssh 10.140.0.[3-7] example
pssh -H "`echo 10.140.0.{3..7}`" -i -I "bash -s" < local_script.sh
# reference CPU num
grep "^processor" /proc/cpuinfo | wc -l
func do_something {
;
}
dir=`mktemp -d`
while [ ]; do
{ do_something >/dev/null 2>&1; echo $? >> "$dir/$BASHPID"; } &
done
wait
@Kairi
Kairi / ac-iosched.c
Last active September 28, 2015 15:45
Alleviate Conflict(AC) I/O scheduler For SSD
#include <linux/kernel.h>
#include <linux/fs.h>
#include <linux/blkdev.h>
#include <linux/elevator.h>
#include <linux/bio.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/init.h>
#include <linux/compiler.h>
#include <linux/rbtree.h>
@Kairi
Kairi / tpps-iosched.c
Last active August 29, 2015 14:23
TPPS I/O Scheduler modify to run in Linux 4.x kernel. (tested in linux kernel 4.0-rc7 with QEMU)
/*
* TPPS, or Tiny Parallel Proportion disk Scheduler.
*
* Based on ideas from Zhu Yanhai <[email protected]>
*
* Copyright (C) 2013 Robin Dong <[email protected]>
*/
#include <linux/module.h>
#include <linux/blkdev.h>
#include <linux/elevator.h>
@Kairi
Kairi / sio-iosched.c
Created June 17, 2015 06:33
Simple I/O scheduler(SIO scheduler) is desinged for Solid State Drive. This gist is modified to run in Linux Kernel4.x.
/*
* Simple IO scheduler
* Based on Noop, Deadline and V(R) IO schedulers.
* This algorithm does not do any kind of sorting, as it is aimed for
* aleatory access devices, but it does some basic merging. We try to
* keep minimum overhead to achieve low latency.
*
* Asynchronous and synchronous requests are not treated separately, but
* we relay on deadlines to ensure fairness.
*
@Kairi
Kairi / sample_input.go
Created December 2, 2014 07:02
using stdin in golang
package main
import (
"fmt"
"bufio"
"os"
)
var sc = bufio.NewScannner(os.Stdin)
func nextInt() int {
sc.Scan()
@Kairi
Kairi / args_sample.go
Created September 20, 2014 09:46
command line arg in glang
package main
import (
"fmt"
"os"
)
func main() {
// os.Args ([]string)
fmt.Println(os.Args)
@Kairi
Kairi / type_assertion.go
Created September 16, 2014 06:42
type assertion and switch
package main
import (
"fmt"
)
func typeCheck(value interface{}) {
switch t := value.(type) {
case string:
fmt.Println(t , "is string")
@Kairi
Kairi / write_file_using_ioutil.go
Created September 16, 2014 06:16
wirte file in golang using "ioutil"
package main
import (
"io/ioutil"
"log"
)
func main() {
message := []byte("Hello World\n")
err := ioutil.WriteFile("./file_name.txt", message, 0666)