Skip to content

Instantly share code, notes, and snippets.

Sokolov Yura funny-falcon

Block or report user

Report or block funny-falcon

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View greeter_client.go
/*
*
* Copyright 2015 gRPC authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
View maglev.go
package main
const TableSize = uint16(1 << 14)
type Table []uint16
type Shard struct {
Hash uint64
Weight float64
}
View promiseme.js
let handlers = {}
handlers.get = function(target, property) {
let v = target[property]
if (typeof(v) == "function") {
return async (...args) => {
return new Promise((resolve, reject) => {
target[property](...args, (err, ...rest) => {
if (err) reject(err)
else resolve(rest.length == 1 ? rest[0] : rest)
View hashtbl.cr
class HashChTbl(K, V)
include Enumerable({K, V})
include Iterable({K, V})
getter size : Int32 = 0
# index into SIZES array
@sz : UInt8 = 0_u8
@rebuild_num : UInt16 = 0_u16
@first : UInt32 = 0_u32
@last : UInt32 = 0_u32
View .gitconfig
[gui]
spellingdictionary = en_US
tabsize = 4
fontui = -family \"DejaVu Sans\" -size 10 -weight normal -slant roman -underline 0 -overstrike 0
fontdiff = -family \"DejaVu Sans Mono\" -size 10 -weight normal -slant roman -underline 0 -overstrike 0
[user]
emal = funny.falcon@gmail.com
email = funny.falcon@gmail.com
name = Sokolov Yura
[http]
@funny-falcon
funny-falcon / prim.txt
Created Sep 9, 2017
xorshit64 for 2*32bit state
View prim.txt
26-5-1 11 x^64 + x^36 + x^32 + x^30 + x^28 + x^26 + x^24 + x^15 + x^13 + x^4 + 1
2-7-21 11 x^64 + x^35 + x^34 + x^32 + x^19 + x^18 + x^8 + x^4 + x^3 + x^2 + 1
5-27-18 11 x^64 + x^32 + x^26 + x^20 + x^18 + x^12 + x^9 + x^6 + x^5 + x^4 + 1
1-2-11 13 x^64 + x^41 + x^35 + x^33 + x^32 + x^18 + x^11 + x^9 + x^6 + x^3 + x^2 + x + 1
20-7-3 13 x^64 + x^52 + x^44 + x^40 + x^32 + x^24 + x^21 + x^16 + x^14 + x^12 + x^8 + x^4 + 1
23-8-1 15 x^64 + x^47 + x^41 + x^36 + x^32 + x^27 + x^26 + x^23 + x^22 + x^13 + x^11 + x^10 + x^6 + x^4 + 1
5-27-21 15 x^64 + x^33 + x^32 + x^29 + x^27 + x^23 + x^21 + x^15 + x^13 + x^10 + x^7 + x^6 + x^5 + x^3 + 1
10-13-6 17 x^64 + x^42 + x^39 + x^38 + x^37 + x^34 + x^31 + x^29 + x^28 + x^26 + x^24 + x^23 + x^21 + x^16 + x^14 + x^12 + 1
17-1-18 17 x^64 + x^37 + x^35 + x^32 + x^31 + x^27 + x^23 + x^21 + x^19 + x^16 + x^15 + x^13 + x^9 + x^7 + x^3 + x + 1
18-7-16 17 x^64 + x^47 + x^46 + x^41 + x^40 + x^34 + x^31 + x^25 + x^22 + x^20 + x^15 + x^14 + x^12 + x^10 + x^9 + x^8 + 1
@funny-falcon
funny-falcon / hasher.cr
Last active Jun 17, 2017
Hasher Crystal draft
View hasher.cr
require "secure_random"
require "static_array"
module Hashing
alias Type = UInt32
@@seed = uninitialized StaticArray(UInt32, 6)
struct StdHasher
# lucky777 hash https://github.com/funny-falcon/fanom_hash/blob/master/lucky777.h
struct Impl
@funny-falcon
funny-falcon / 00-report.md
Last active Jan 31, 2017
improved id_table
View 00-report.md

Report for improved id_table implementation

  • it has up to 25% less size (19% on smallest tables)

  • it is a bit slower on small tables (~3%) for hit and a bit faster for miss

  • due to additional mix of key bits, it is always faster on big tables.

    Note: bit mixing makes small tables slower, so it is enabled only for big tables (>64 capacity).

    If performance for small tables much more important, mixing could be removed completely (this will return 1% on hit)

View go-rpc-client.go
package main
import (
"flag"
"fmt"
"log"
"net/rpc"
"sync"
"time"
)
@funny-falcon
funny-falcon / simple-client.go
Last active Jan 27, 2017
simple bench net/rpc
View simple-client.go
package main
import (
"bufio"
"encoding/binary"
"flag"
"fmt"
"io"
"log"
"net"
You can’t perform that action at this time.