Date: Sun, 21 Mar 2021 11:03:19 +0100 From: Michał Majchrowicz <sectroyer@...il.com> To: john-users@...ts.openwall.com Subject: Setting node values in heterogenous systems. Hello. Recently there has been (IMHO) significant changes to johns fork/node code: https://github.com/openwall/john/issues/4609 Before this patch fork and node values had to match each other. Which made it every hard to use fork/node in heterogenous systems as size of work per node had to vary from node to node. With this new patch you can set node value to any number divisible by fork number. With a little of math it's possible to calculate node values for nodes which computational power varies significantly. I attach the script that uses very naive approach for finding node values that match node hashing speeds within 2% (it can be easily adjusted in code). If you run the tool without arguments it shows: ./calc.py Usage: calc.py number_of_threads1 power1 number_of_threads2 power2 Power can be expressed by any number of same magnitude. For example I have two nodes, one with 10 cores at my disposal which has speed of ~100MH/s and second with 32 cores and speed of around 275MH/s. I pass those values to script and get: ./calc.py 10 100 32 275 Faster power: 275 Slower power: 100 Faster threads: 32 Slower threads: 10 Found: 192 192.5 Node: 192 70 So in order to match power of this two nodes I have to use 70 nodes for slower node and 192 for faster node. With those settings both nodes finish their tasks at similar eta. Regards. Download attachment "calc.py.zip" of type "application/zip" (542 bytes)
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.