Syoyo Fujita's Blog

raytracing monte carlo

Month: September, 2013


rspreload is a DLL replacement for socket() functions  taking a leverage of RDMA transport layer without any application modification.

rspreload is built on top of rsockets feature. See details here for rsockets:

Recent advances of rspreload/rsocket finalIy enables  accelerating existing TCP/IP socket application such like iperf.

(At least it iperf with rspreload didn’t work a years ago).

$ LD_PRELOAD=/usr/local/lib/rsocket/ iperf -c

Client connecting to, TCP port 5001
TCP window size: 128 KByte (default)
[ 3] local port 51626 connected with port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 22.9 GBytes 19.7 Gbits/sec

It can achieve 19.7 Gbits/s in my IB QDR configuration.

This is 2/3 of theoretical peak 32 Gbits/s!  Simply super.

More details here:


550D + Magic Lantern Dual ISO finally works!

550D + Magic Lantern Dual ISO finally comes!

Here’s my initial test.


Zoom-up of dual iso RAW image. You can see different exposure(ISO) for each alternate lines.

Zoom-up of original RAW image shoot with Dual ISO. You can see different exposure(ISO) for each alternate lines.

Dual ISO records RAW image with different exposure(ISO) for each alternate lines, so we need a processing after shooting(using cr2hdr tool given at Dual ISO page)

No Dual ISO image. You can see color noise in dark region.

Dual ISO

Processed Dual ISO image. You can see less color noise in dark region!


I’ve confirmed Dual ISO also works well for RAW video. The problem is processing Dual ISO image with cr2hdr requires a lot of processing time.

I am considering GPGPU optimization for faster Dual ISO movie processing. Stay tuned 😉


I am investigating “DSLR as an illuminance meter”.

Dual ISO will definitely improve the accuracy of “DSLR as an illuminance meter”, which will be valuable for physically-accurate IBL and HDRI  footage used in CG/VFX.