Configure core count
This commit is contained in:
parent
f29389ded7
commit
42bd267310
@ -365,16 +365,12 @@ do_start_stop(#s{key = #key{id = PubKey}, network = Network}) ->
|
||||
end
|
||||
end,
|
||||
Miner = unicode:characters_to_binary([Fatness, Bits, "-", Type]),
|
||||
Count = optimize_count(),
|
||||
Instance = #{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
Workers = lists:duplicate(Count, Instance),
|
||||
Profile =
|
||||
[{pubkey, PubKey},
|
||||
{workers, [#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>},
|
||||
#{<<"executable">> => Miner, <<"executable_group">> => <<"gajumine">>}]},
|
||||
{workers, Workers},
|
||||
{pool_admin_url, Eureka}],
|
||||
ok = gmc_gui:message({notice, "Starting..."}),
|
||||
ok = gmc_gui:message({notice, ["Miner: ", Miner]}),
|
||||
@ -392,6 +388,31 @@ do_start_stop(#s{key = #key{id = PubKey}, network = Network}) ->
|
||||
disconnected],
|
||||
lists:foreach(fun gmhc_events:ensure_subscribed/1, Events).
|
||||
|
||||
optimize_count() ->
|
||||
{Procs, Memory} =
|
||||
case os:type() of
|
||||
{unix, linux} ->
|
||||
{processor, Cores} = hd(erlang:system_info(cpu_topology)),
|
||||
P = length(Cores),
|
||||
M = list_to_integer(string:trim(os:cmd("cat /proc/meminfo | grep MemTotal | awk '{print $2}'"))) * 1024,
|
||||
{P, M};
|
||||
{unix, darwin} ->
|
||||
P = list_to_integer(os:cmd("sysctl -n hw.physicalcpu")),
|
||||
M = list_to_integer(os:cmd("sysctl -n hw.memsize")),
|
||||
{P, M};
|
||||
{win32, nt} ->
|
||||
P = list_to_integer(os:getenv("NUMBER_OF_PROCESSORS")),
|
||||
M = list_to_integer(string:strip(lists:nth(2, string:split(os:cmd("wmic computersystem get TotalPhysicalMemory"), "\r\r\n", all)))),
|
||||
{P, M}
|
||||
end,
|
||||
MeanMaps = Memory div (1_073_741_824 * 4),
|
||||
Recommended = max(min(Procs, MeanMaps) - 1, 1),
|
||||
ok = tell(info, "Physical Processors: ~p", [Procs]),
|
||||
ok = tell(info, "Physical Memory: ~p", [Memory]),
|
||||
ok = tell(info, "29-bit Mean Map Space: ~p", [MeanMaps]),
|
||||
ok = tell(info, "Recommended Workers: ~p", [Recommended]),
|
||||
Recommended.
|
||||
|
||||
|
||||
do_gajudesk() ->
|
||||
ok = tell(info, "Running gajudesk"),
|
||||
|
Loading…
x
Reference in New Issue
Block a user