[erlang-questions] Improve performance of IO bounded server written in Erlang via having pollset for each scheduler and bind port to scheduler together with process

Zabrane Mickael <>
Thu Jul 12 11:43:12 CEST 2012


On Jul 12, 2012, at 11:23 AM, Wei Cao wrote:

> Not really,  bind_port_to_scheduler is based on pollset_per_scheduler,
> you can use bind_port_to_scheduler only,
> git fetch git://github.com/weicao/otp.git bind_port_to_scheduler

can't compile the VM wihth your new patch:

git clone git://github.com/weicao/otp.git
cd otp
git fetch git://github.com/weicao/otp.git bind_port_to_scheduler
./otp_build autoconf
CFLAGS="-DERTS_POLLSET_PER_SCHEDULER -g -O3 -fomit-frame-pointer" ./configure --prefix=/SOMEWHERE/usr
make && make install
make clean (WITH OR WITHOUT make clean, it doesn't compile)
gcc  -m32 -DERTS_POLLSET_PER_SCHEDULER -g -O3 -fomit-frame-pointer -I/opt/otp/erts/i686-pc-linux-gnu  -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-tree-copyrename  -D_GNU_SOURCE -DERTS_SMP -DHAVE_CONFIG_H -Wall -Wstrict-prototypes -Wmissing-prototypes -Wdeclaration-after-statement -DUSE_THREADS -D_THREAD_SAFE -D_REENTRANT -DPOSIX_THREADS -D_POSIX_THREAD_SAFE_FUNCTIONS -DERTS_ENABLE_LOCK_COUNT  -Ii686-pc-linux-gnu/opt/smp -Ibeam -Isys/unix -Isys/common -Ii686-pc-linux-gnu -Izlib  -Ipcre -Ihipe -I../include -I../include/i686-pc-linux-gnu -I../include/internal -I../include/internal/i686-pc-linux-gnu -c beam/erl_process_lock.c -o obj/i686-pc-linux-gnu/opt/smp/erl_process_lock.o
beam/erl_process_lock.c: In function 'erts_lcnt_enable_proc_lock_count':
beam/erl_process_lock.c:1275:15: error: 'process_tab' undeclared (first use in this function)
beam/erl_process_lock.c:1275:15: note: each undeclared identifier is reported only once for each function it appears in
make[3]: *** [obj/i686-pc-linux-gnu/opt/smp/erl_process_lock.o] Error 1
make[3]: Leaving directory `/opt/otp/erts/emulator'
make[2]: *** [opt] Error 2
make[2]: Leaving directory `/opt/otp/erts/emulator'
make[1]: *** [smp] Error 2
make[1]: Leaving directory `/opt/otp/erts'


> 2012/7/12 Zabrane Mickael <>:
>> On Jul 12, 2012, at 11:12 AM, Wei Cao wrote:
>>> The fix is git-pushed to patch branches, retrieved by
>>> git fetch git://github.com/weicao/otp.git bind_port_to_scheduler
>>> git fetch git://github.com/weicao/otp.git pollset_per_scheduler
>>> I used git push --force, so it's better to fetch it whole again.
>> So I need both patches? Right?
>> Regards,
>> Zabrane
> -- 
> Best,
> Wei Cao

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20120712/bad45011/attachment.html>

More information about the erlang-questions mailing list