Skip to content

Instantly share code, notes, and snippets.

View sunxiaoguang's full-sized avatar

Xiaoguang Sun sunxiaoguang

  • PingCAP
  • Beijing, People's Republic of China
  • X @xgsun
View GitHub Profile
@hellerbarde
hellerbarde / latency.markdown
Created May 31, 2012 13:16 — forked from jboner/latency.txt
Latency numbers every programmer should know

Latency numbers every programmer should know

L1 cache reference ......................... 0.5 ns
Branch mispredict ............................ 5 ns
L2 cache reference ........................... 7 ns
Mutex lock/unlock ........................... 25 ns
Main memory reference ...................... 100 ns             
Compress 1K bytes with Zippy ............. 3,000 ns  =   3 µs
Send 2K bytes over 1 Gbps network ....... 20,000 ns  =  20 µs
SSD random read ........................ 150,000 ns  = 150 µs

Read 1 MB sequentially from memory ..... 250,000 ns = 250 µs

@npiguet
npiguet / InternBench.java
Created May 17, 2012 01:08
A benchmark to compare String.intern() to ConcurrentHashMap.putIfAbsent()
import java.util.*;
import java.util.concurrent.*;
/**
* java version "1.7.0_03"
* OpenJDK Runtime Environment (IcedTea7 2.1.1pre) (7~u3-2.1.1~pre1-1ubuntu2)
* OpenJDK 64-Bit Server VM (build 22.0-b10, mixed mode)
*
* javac InternBench.java
* java -Xmx1g -Xms1g -XX:+PrintGCDetails -XX:NewRatio=1 -XX:+PrintCompilation -verbose:gc -classpath . InternBench