Skip to content

Instantly share code, notes, and snippets.

View hankliu5's full-sized avatar
🐶

Yu-Chia "Hank" Liu hankliu5

🐶
View GitHub Profile
import numpy as np
import sys
np.random.seed(0)
size = int(sys.argv[1]) if len(sys.argv) > 1 else 4096*4096
outfile = open('ascii_uint32_vec_{}.txt'.format(size), 'w')
A = np.random.randint(4294967295, size=(1, size))
np.savetxt(outfile, A)
np.save('validation_uint32_vec_{}'.format(size), A)
outfile.close()
import numpy as np
import time
import sys
import csv
import mmap
ret = []
current_time = time.time()
with open(sys.argv[1], 'r') as f:
func Merge(ldata []float64, rdata []float64) (result []float64) {
result = make([]float64, len(ldata)+len(rdata))
lidx, ridx := 0, 0
for i := 0; i < cap(result); i++ {
switch {
case lidx >= len(ldata):
result[i] = rdata[ridx]
ridx++
case ridx >= len(rdata):
func SingleMergeSort(data []float64) []float64 {
if len(data) < 2 {
return data
}
middle := len(data) / 2
return Merge(SingleMergeSort(data[:middle]), SingleMergeSort(data[middle:]))
}
func MultiMergeSort(data []float64, res chan []float64) {
if len(data) < 2 {
res <- data
return
}
leftChan := make(chan []float64)
rightChan := make(chan []float64)
middle := len(data) / 2
import (
"sync"
)
func MultiMergeSortWithSem(data []float64, sem chan struct{}) []float64 {
if len(data) < 2 {
return data
}
middle := len(data) / 2
/**
* Definition for an interval.
* struct Interval {
* int start;
* int end;
* Interval() : start(0), end(0) {}
* Interval(int s, int e) : start(s), end(e) {}
* };
*/
bool start_compare(Interval &a, Interval &b) { return a.start > b.start; }
import sys
import collections
class Buf():
def __init__(self, buf=0, size=0):
self.buf = buf
self.size = size
def __repr__(self):
return 'buf: {}, size: {}'.format(self.buf, self.size)
#include <fcntl.h> /* O_ constants */
#include <unistd.h> /* ftruncate */
#include <sys/mman.h> /* mmap */
#include <string.h>
int main() {
int fd;
char *map;
char *name = "test.txt";
#include <stdio.h>
#include <string.h>
int main(void)
{
int a[3];
int b[3];
int i;
b[0] = 1;