"threads=8" is the key phrase … +S 4:4

On Aug 14, 2013, at 10:04 AM, Guido Medina <guido.med...@temetra.com> wrote:

> For the following information should it be +S 4:4 or +S 4:8?
> 
> root@somehost# lshw -C processor
>  *-cpu
>       description: CPU
>       product: Intel(R) Core(TM) i7 CPU         930  @ 2.80GHz
>       vendor: Intel Corp.
>       physical id: 4
>       bus info: cpu@0
>       version: Intel(R) Core(TM) i7 CPU         930  @ 2.80GHz
>       serial: To Be Filled By O.E.M.
>       slot: CPU 1
>       size: 1600MHz
>       capacity: 1600MHz
>       width: 64 bits
>       clock: 133MHz
>       capabilities: x86-64 fpu fpu_exception wp vme de pse tsc msr pae mce 
> cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 
> ss ht tm pbe syscall nx rdtscp constant_tsc arch_perfmon pebs bts rep_good 
> nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 
> ssse3 cx16 xtpr pdcm sse4_1 sse4_2 popcnt lahf_lm ida dtherm tpr_shadow vnmi 
> flexpriority ept vpid cpufreq
>       configuration: cores=4 enabledcores=4 threads=8
> 
> Thanks,
> 
> Guido.
> 
> On 14/08/13 01:38, Matthew Von-Maszewski wrote:
>> ** The following is copied from Basho's leveldb wiki page:
>> 
>> https://github.com/basho/leveldb/wiki/Riak-tuning-1
>> 
>> 
>> 
>> Summary:
>> 
>> leveldb has a higher read and write throughput in Riak if the Erlang 
>> scheduler count is limited to half the number of CPU cores. Tests have 
>> demonstrated improvements of 15% to 80% greater throughput.
>> 
>> The scheduler limit is set in the vm.args file:
>> 
>> +S x:x
>> 
>> where "x" is the number of schedulers Erlang may use. Erlang's default value 
>> of "x" is the total number of CPUs in the system. For Riak installations 
>> using leveldb, the recommendation is to set "x" to half the number of CPUs. 
>> Virtual environments are not yet tested.
>> 
>> Example: for 24 CPU system
>> 
>> +S 12:12
>> 
>> Discussion:
>> 
>> We have tested a limited number of CPU configurations and customer loads. In 
>> all cases, there is a performance increase when the +S option is added to 
>> the vm.args file to reduce the number of Erlang schedulers. The working 
>> hypothesis is that the Erlang schedulers perform enough "busy wait" work 
>> that they always create context switch away from leveldb when leveldb is 
>> actually the only system task with real work.
>> 
>> The tests included 8 CPU (no hyper threading, physical cores only) and 24 
>> CPU (12 physical cores with hyper threading) systems. All were 64bit Intel 
>> platforms. Generalized findings:
>> 
>>      • servers running higher number of vnodes (64) had larger performance 
>> gains than those with fewer (8)
>>      • servers running SSD arrays had larger performance gains than those 
>> running SATA arrays
>>      • Get and Write operations showed performance gains, 2i query 
>> operations (leveldb iterators) were unchanged
>>      • Not recommended for servers with less than 8 CPUs (go no lower than 
>> +S 4:4)
>> 
>> Performance improvements were as high as 80% over extended, heavily loaded 
>> intervals on servers with SSD arrays and 64 vnodes. No test resulted in 
>> worse performance due to the addition of +S x:x.
>> 
>> The +S x:x configuration change does not have to be implemented 
>> simultaneously to an entire Riak cluster. The change may be applied to a 
>> single server for verification. Steps: update the vm.args file, then restart 
>> the Riak node. Erlang command line changes to schedules were ineffective.
>> 
>> This configuration change has been running in at least one large, 
>> multi-datacenter production environment for several months.
>> 
>> 
>> _______________________________________________
>> riak-users mailing list
>> riak-users@lists.basho.com
>> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com
> 
> 
> _______________________________________________
> riak-users mailing list
> riak-users@lists.basho.com
> http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com


_______________________________________________
riak-users mailing list
riak-users@lists.basho.com
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to