Skip to content

Instantly share code, notes, and snippets.

@mocchira
Last active December 15, 2015 20:19
Show Gist options
  • Save mocchira/5317346 to your computer and use it in GitHub Desktop.
Save mocchira/5317346 to your computer and use it in GitHub Desktop.
result of eprof on a leo_gateway server.
erlang:demonitor/2 1713 0.00 16259 [ 9.49]
ets:safe_fixtable/2 748 0.00 17258 [ 23.07]
ets:next/2 2312 0.00 17622 [ 7.62]
erlang:crc32/2 562 0.01 19638 [ 34.94]
file:file_name_1/2 34643 0.01 20030 [ 0.58]
ets:lookup/2 4359 0.01 26580 [ 6.10]
erlang:monitor/2 4973 0.01 28380 [ 5.71]
ets:select/1 361 0.01 30265 [ 83.84]
erlang:send/3 1736 0.01 30438 [ 17.53]
erlang:crc32/1 842 0.01 39367 [ 46.75]
erlang:port_command/2 1936 0.02 92923 [ 48.00]
erlang:term_to_binary/1 842 0.03 96608 [ 114.74]
ets:match_object/2 571 0.04 142159 [ 248.96]
dcerl_api:get_chunk/2 513 0.08 294311 [ 573.71]
dcerl_api:get/2 225162 0.12 468925 [ 2.08]
dcerl:get/2 225214 0.25 959268 [ 4.26]
gen_server:decode_msg/8 8201787 2.51 9577735 [ 1.17]
gen_server:handle_msg/5 8201781 2.86 10922810 [ 1.33]
ecache_server:handle_call/3 8200449 5.10 19452448 [ 2.37]
erlang:setelement/3 8691654 7.15 27297562 [ 3.14]
cherly:put/3 866398 8.14 31079070 [ 35.87]
gen_server:loop/6 8201825 10.76 41065041 [ 5.01]
gen_server:reply/2 8200747 17.49 66772261 [ 8.14]
cherly:get/2 7333571 45.28 172850995 [ 23.57]
@mocchira
Copy link
Author

mocchira commented Apr 5, 2013

hardware

  • cpu:32core
  • mem: 32GB

os

  • Linux leofs09 2.6.32-279.el6.x86_64 #1 SMP Fri Jun 22 12:19:21 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

erlang

  • 15B03-1

leofs

  • of Gateway/Storage Nodes: 1/5

  • Consistency: N:3 R:1 W:2 D:2
  • memory_cache_size: 16GB
  • disk_cache_size: 128GB
  • acceptor_pool_size: 512

basho_bench

{mode,      max}.
{concurrent, 512}.
{key_generator,   {pareto_int, 100000}}.
{value_generator, {exponential_bin, 16384, 131072} }.
{operations, [{get,9},{put,1}]}.

considering

obviously cherly:get/2 take most of the time in leo_gateway.
but IMHO, the amount of cpu time seem to be relatively reasonable.

@mocchira
Copy link
Author

mocchira commented Apr 5, 2013

Note

Now I'm using the hash structure based on golang's map implementation(version pre1.0).
New golang(version 1.1) map impl will be more faster(about 40%) and reduce memory space.
So I will fork it after golang1.1 will be released.

@yosukehara
Copy link

  • the bellow is redundant-manager related results:
ets:safe_fixtable/2                                  748   0.00      17258  [     23.07]
ets:next/2                                          2312   0.00      17622  [      7.62]
ets:lookup/2                                        4359   0.01      26580  [      6.10]
ets:match_object/2                                   571   0.04     142159  [    248.96]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment