Designing Patterns

View within the Urban Jungle

Discussing nitty gritty software development details that Tony finds interesting



View within the Urban Jungle RSS FeedSite Feed

I tend not to inline C++ metho…

I tend not to inline C++ methods in order to reduce compile dependencies, but, guided by a profiler, it sometimes is very beneficial.


epoll definitely provides a su…

epoll definitely provides a substantial performance gain over poll for 100 sockets. Poll scales very poorly.


Will epoll provide a substanti…

Will epoll provide a substantial performance gain over poll for ~120 sockets (Linux)?


Timing measurements of the day…

Timing measurements of the day: a 40K memcpy takes about 20 us on an Opteron 275 and only 3.5 us on a (much newer) Xeon E7340.


Find cache line size on linux …

Find cache line size on linux (recent CPUs only): cat /sys/devices/system/cpu/cpu0/cache/index0/coherency_line_size


Linking with a module and agai…

Linking with a module and against a shared library with the module can lead to constructing/destructing statics in the module twice (boom)!


Enjoying the ease, power, and …

Enjoying the ease, power, and flexibility of the debugger, having relied on print statements to track down issues in the past (neanderthal?)


Problem: company wants to let …

Problem: company wants to let employees work remotely but also wants full control over work calls. Solution: Citrix + Softphone + VOIP.


C++ should copy the Java stati…

C++ should copy the Java static initializer block feature. They can be simulated very easily, but I would welcome the syntactic suger.


Fail-fast (http://en.wikipedia…

Fail-fast (http://en.wikipedia.org/wiki/Fail-fast) is a key property of a well constructed system.