Launch CPU Slots with numactl on linux
Moderators: Site Moderators, FAHC Science Team
Launch CPU Slots with numactl on linux
I'm interested in launching my CPU Slots with custom numactl settings on linux... Is there any way to do this?
https://linux.die.net/man/8/numactl
Thanks!
https://linux.die.net/man/8/numactl
Thanks!
-
- Site Moderator
- Posts: 6986
- Joined: Wed Dec 23, 2009 9:33 am
- Hardware configuration: V7.6.21 -> Multi-purpose 24/7
Windows 10 64-bit
CPU:2/3/4/6 -> Intel i7-6700K
GPU:1 -> Nvidia GTX 1080 Ti
§
Retired:
2x Nvidia GTX 1070
Nvidia GTX 675M
Nvidia GTX 660 Ti
Nvidia GTX 650 SC
Nvidia GTX 260 896 MB SOC
Nvidia 9600GT 1 GB OC
Nvidia 9500M GS
Nvidia 8800GTS 320 MB
Intel Core i7-860
Intel Core i7-3840QM
Intel i3-3240
Intel Core 2 Duo E8200
Intel Core 2 Duo E6550
Intel Core 2 Duo T8300
Intel Pentium E5500
Intel Pentium E5400 - Location: Land Of The Long White Cloud
- Contact:
Re: Launch CPU Slots with numactl on linux
Welcome to the F@H Forum lafrad,
AFAIK, FahCore are not NUMA aware so I am not sure if that would work or not.
AFAIK, FahCore are not NUMA aware so I am not sure if that would work or not.
ETA:
Now ↞ Very Soon ↔ Soon ↔ Soon-ish ↔ Not Soon ↠ End Of Time
Welcome To The F@H Support Forum Ӂ Troubleshooting Bad WUs Ӂ Troubleshooting Server Connectivity Issues
Now ↞ Very Soon ↔ Soon ↔ Soon-ish ↔ Not Soon ↠ End Of Time
Welcome To The F@H Support Forum Ӂ Troubleshooting Bad WUs Ӂ Troubleshooting Server Connectivity Issues
Re: Launch CPU Slots with numactl on linux
as far as I know, numactl tells linux how to launch the program... the program itself doesn't need to have NUMA awareness.
I'm trying to keep my Threadripper 2950x from trashing the threads from one NUMA node to the other... It meant a lot in windows (process Lasso did well enough), but linux seems to be a little less... automated... launching it with the numactl command seems the best way...
I'm trying to keep my Threadripper 2950x from trashing the threads from one NUMA node to the other... It meant a lot in windows (process Lasso did well enough), but linux seems to be a little less... automated... launching it with the numactl command seems the best way...
Re: Launch CPU Slots with numactl on linux
The only way I know to do this would be to launch 2 instances of the client (each would require private work directories, and their config files listening on different management ports), and each instances is launched on the appropriate NUMA node. Set each instance for half the number of cores/threads on the whole system so they only use as many as are actually available. Don't forget to pin both CPU and memory when launching with numactl.
That's gonna be a messy init script though.
That's gonna be a messy init script though.
Re: Launch CPU Slots with numactl on linux
Yea, and the Control launches the workers too, so it'll have to interpret that too.... hmm
Re: Launch CPU Slots with numactl on linux
Are you sure?lafrad wrote:Yea, and the Control launches the workers too, so it'll have to interpret that too.... hmm
numactl runs processes with a specific NUMA scheduling or memory placement policy. The policy is set for command and inherited by all of its children.
Re: Launch CPU Slots with numactl on linux
The advanced control app does not launch the clients, it only connects to it to control it. The actual client (FAHClient binary) is launch independently, typically during system bootup. This is where you'd need to have numactl launch it, or something equivalent to numactl. The advanced control app would have 2 entries in the left side list for a single host which is atypical.
I don't have a NUMA system, but I have a Windows VM with a GPU passed to it for gaming. It folds when not gaming. My advanced control shows and manages both systems.
I don't have a NUMA system, but I have a Windows VM with a GPU passed to it for gaming. It folds when not gaming. My advanced control shows and manages both systems.
Re: Launch CPU Slots with numactl on linux
As far as i can tell, the FAHClient actually launches the "cores" as apps, right? It shows up in the process lists as an independent app... The app itself would have to have a "prefix" for that so `numactl` could be added....
-
- Site Admin
- Posts: 7936
- Joined: Tue Apr 21, 2009 4:41 pm
- Hardware configuration: Mac Pro 2.8 quad 12 GB smp4
MacBook Pro 2.9 i7 8 GB smp2 - Location: W. MA
Re: Launch CPU Slots with numactl on linux
Actually FAHClient launches a FAHCoreWrapper process which runs the FAHCore_nn process and passes the starting parameters to it. It has been a while since I looked closely, I forget whether the FAHCore process is independent or a spawned subprocess of the FAHCoreWrapper process.
For example, from a startup of a CPU WU to be processed on one of my Mac systems as shown in the log file:
For example, from a startup of a CPU WU to be processed on one of my Mac systems as shown in the log file:
Code: Select all
06:28:45:WU00:FS00:Running FahCore: /usr/local/bin/FAHCoreWrapper "/Library/Application Support/FAHClient/cores/cores.foldingathome.org/v7/osx/64bit/avx/Core_a7.fah/FahCore_a7" -dir 00 -suffix 01 -version 706 -lifeline 1060 -checkpoint 15 -np 4
iMac 2.8 i7 12 GB smp8, Mac Pro 2.8 quad 12 GB smp6
MacBook Pro 2.9 i7 8 GB smp3
Re: Launch CPU Slots with numactl on linux
So, it'd have to be a property of the wrapper, OR the wrapper would have to have the numactl added to its process command line...
I'll figure out a feature request at some point
I'll figure out a feature request at some point