Skip to content

Instantly share code, notes, and snippets.

Latency Comparison Numbers
--------------------------
L1 cache reference 0.5 ns
Branch mispredict 5 ns
L2 cache reference 7 ns 14x L1 cache
Mutex lock/unlock 25 ns
Main memory reference 100 ns 20x L2 cache, 200x L1 cache
Compress 1K bytes with Zippy 3,000 ns
Send 1K bytes over 1 Gbps network 10,000 ns 0.01 ms
Read 4K randomly from SSD* 150,000 ns 0.15 ms
@jfsurban
jfsurban / wm_enumarate_evailable_connections.cpp
Created November 12, 2013 09:33
Enumerate available connections on WM5 device - ConnMgrQueryDetailedStatus
CONNMGR_CONNECTION_DETAILED_STATUS *pConnMgrDet;
HRESULT hResult;
DWORD dwBufferSize=0;/
hResult=ConnMgrQueryDetailedStatus(pConnMgrDet,&dwBufferSize);
if(hResult==(HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER)))
{
pConnMgrDet=(CONNMGR_CONNECTION_DETAILED_STATUS *)new BYTE[dwBufferSize];
hResult=ConnMgrQueryDetailedStatus(pConnMgrDet,&dwBufferSize);
public class ColorUtils {
private static final double LM_RED_COEFFICIENT = 0.2126;
private static final double LM_GREEN_COEFFICIENT = 0.7152;
private static final double LM_BLUE_COEFFICIENT = 0.0722;
public static int calculateRelativeLuminance(int color) {
int red = (int) (Color.red(color) * LM_RED_COEFFICIENT);
int green = (int) (Color.green(color) * LM_GREEN_COEFFICIENT);
int blue = (int) (Color.blue(color) * LM_BLUE_COEFFICIENT);
return red + green + blue;