Advice with using Process Lasso

Moderators: Site Moderators, FAHC Science Team

Post Reply
Demmers
Posts: 63
Joined: Sat Mar 07, 2020 12:57 pm

Advice with using Process Lasso

Post by Demmers »

I came across the software Process Lasso on here today, so have it already installed on my Windows machine. I'm just curious if there are any benefits to using it, and how to. I use the Ryzen 3400G to feed my GTX 1650, don't have any performance issues with me using the computer for anything else. According to the Nvidia App, the GPU uses between 14-20% CPU. If there are any performance/efficiency gains to be had from using it, i'm all ears!
arisu
Posts: 373
Joined: Mon Feb 24, 2025 11:11 pm

Re: Advice with using Process Lasso

Post by arisu »

By pinning threads to CPU cores, you can improve performance because the operating system will no longer be migrating the threads between cores. You'll want to make sure you don't put two threads on the same core. If at least one core is not folding, make it core 0, because the operating system likes to schedule things on core 0.
Demmers
Posts: 63
Joined: Sat Mar 07, 2020 12:57 pm

Re: Advice with using Process Lasso

Post by Demmers »

arisu wrote: Sun Apr 27, 2025 3:33 am By pinning threads to CPU cores, you can improve performance because the operating system will no longer be migrating the threads between cores. You'll want to make sure you don't put two threads on the same core. If at least one core is not folding, make it core 0, because the operating system likes to schedule things on core 0.
So is this "CPU Affinities"? And am I adjusting FahCore_24.exe or FAHClient.exe? Surely FahCore will keep on changing depending on the core number?
I'm assuming I only need one thread for the GPU, so do you mean setting that as core 0?
Demmers
Posts: 63
Joined: Sat Mar 07, 2020 12:57 pm

Re: Advice with using Process Lasso

Post by Demmers »

Actually, I may have figured it out, found this old yet useful link https://forums.evga.com/How-to-set-up-P ... 57005.aspx The software interface has changed since time of this post, but was pretty obvious to figure out.
I just set FahCore_24.exe to High priority, and set the Affinity to Always, CPU 7 (8 thread CPU).
Before, all 8 threads in Task Manager were constantly spiking as the GPU core was jumping back and forth. Now, it looks like this! https://imgur.com/a/dw9yKho
I guess I have to repeat this process for each FahCore number as it changes.
muziqaz
Posts: 1661
Joined: Sun Dec 16, 2007 6:22 pm
Hardware configuration: 9950x, 7950x3D, 5950x, 5800x3D
7900xtx, RX9070, Radeon 7, 5700xt, 6900xt, RX 550 640SP
Location: London
Contact:

Re: Advice with using Process Lasso

Post by muziqaz »

Demmers wrote: Sun Apr 27, 2025 2:16 pm Actually, I may have figured it out, found this old yet useful link https://forums.evga.com/How-to-set-up-P ... 57005.aspx The software interface has changed since time of this post, but was pretty obvious to figure out.
I just set FahCore_24.exe to High priority, and set the Affinity to Always, CPU 7 (8 thread CPU).
Before, all 8 threads in Task Manager were constantly spiking as the GPU core was jumping back and forth. Now, it looks like this! https://imgur.com/a/dw9yKho
I guess I have to repeat this process for each FahCore number as it changes.
Remember this change, and please don't post a new thread if or when things start breaking :D
Yes, I understand "this works for me" people, but just saying, remember what you did and when, if things go south
FAH Omega tester
Image
Demmers
Posts: 63
Joined: Sat Mar 07, 2020 12:57 pm

Re: Advice with using Process Lasso

Post by Demmers »

muziqaz wrote: Sun Apr 27, 2025 3:17 pm Remember this change, and please don't post a new thread if or when things start breaking :D
Yes, I understand "this works for me" people, but just saying, remember what you did and when, if things go south
lol wise words!
In all seriousness though, I do agree, if I don't see any obvious improvements, i'll revert back.
arisu
Posts: 373
Joined: Mon Feb 24, 2025 11:11 pm

Re: Advice with using Process Lasso

Post by arisu »

For HPC applications, CPU pinning is almost always recommended. It's not as important with GPU folding because there's only one thread, but it is always useful unless you're trying to pin two things to the same core.

It helps because there are fewer context switches (scheduler overhead) and because there are fewer L1 and L2 cache misses. The first reason is self-explanatory: Each time a thread has to move to another core, there's a brief delay as it switches. The second reason is a little more complex. CPUs usually have three levels of cache, L1, L2, and L3. Every core shares the L3 cache, but each core has its own L1 and L2. These caches store frequently-accessed memory. If an entry isn't in any of the caches, the core has to fetch it from main memory which is slow. If a thread keeps being moved around to different cores, then the new core will not have any of the data in its L1 or L2, and will have to fetch it from L3 or memory, which is slower. By keeping it on the same core, the cache always stays "hot".

But CPU pinning can be risky if you overdo it. The scheduler usually has a pretty good idea of where to move threads. It will never make a stupid decision, but it never makes great decisions either. By pinning threads to CPUs, you're telling the scheduler that you're going to make the decisions (for that thread). So you can make good decisions, but you can also make stupid decisions like trying to pin two very busy threads to the same physical core aka to two adjacent virtual cores (which is something the scheduler would know not to do). So just be aware of that, and don't pin two busy threads to one physical core. ;)

Oh, and if you use an Intel CPU that has P-cores and E-cores, never pin to an E-core! Those are slow. And don't pin to core 0 if there are other available cores. But if you're just pinning the GPU thread to some core and that's the only thread that's pinned, nothing can go wrong.
toTOW
Site Moderator
Posts: 6427
Joined: Sun Dec 02, 2007 10:38 am
Location: Bordeaux, France
Contact:

Re: Advice with using Process Lasso

Post by toTOW »

Demmers wrote: Sat Apr 26, 2025 10:28 pm I came across the software Process Lasso on here today, so have it already installed on my Windows machine. I'm just curious if there are any benefits to using it, and how to. I use the Ryzen 3400G to feed my GTX 1650, don't have any performance issues with me using the computer for anything else. According to the Nvidia App, the GPU uses between 14-20% CPU. If there are any performance/efficiency gains to be had from using it, i'm all ears!
No need of Process Lasso unless you have a CPU with big.LITTLE architecture.

Pinning GPU Fahcore to one thread/core will be counter productive as sanity checks that run on CPU are multi threaded.
Image

Folding@Home beta tester since 2002. Folding Forum moderator since July 2008.
Demmers
Posts: 63
Joined: Sat Mar 07, 2020 12:57 pm

Re: Advice with using Process Lasso

Post by Demmers »

toTOW wrote: Mon Apr 28, 2025 5:18 pm
Demmers wrote: Sat Apr 26, 2025 10:28 pm I came across the software Process Lasso on here today, so have it already installed on my Windows machine. I'm just curious if there are any benefits to using it, and how to. I use the Ryzen 3400G to feed my GTX 1650, don't have any performance issues with me using the computer for anything else. According to the Nvidia App, the GPU uses between 14-20% CPU. If there are any performance/efficiency gains to be had from using it, i'm all ears!
No need of Process Lasso unless you have a CPU with big.LITTLE architecture.

Pinning GPU Fahcore to one thread/core will be counter productive as sanity checks that run on CPU are multi threaded.
Great timing... I've just turned all my PL settings off! CPU Priority created too much latency, so I reverted that back to default (Idle).
And Affinity was causing issues with my USB audio DAC (random loss of data). Reset that back from cores 6-7 to all cores.... EVERYTHING now runs smoother, i.e as they were.
Conclusion? Trust the software, v8.4.9 does exactly what it needs to do.... if you use an AMD chip at least!
arisu
Posts: 373
Joined: Mon Feb 24, 2025 11:11 pm

Re: Advice with using Process Lasso

Post by arisu »

toTOW wrote: Mon Apr 28, 2025 5:18 pm
Demmers wrote: Sat Apr 26, 2025 10:28 pm I came across the software Process Lasso on here today, so have it already installed on my Windows machine. I'm just curious if there are any benefits to using it, and how to. I use the Ryzen 3400G to feed my GTX 1650, don't have any performance issues with me using the computer for anything else. According to the Nvidia App, the GPU uses between 14-20% CPU. If there are any performance/efficiency gains to be had from using it, i'm all ears!
No need of Process Lasso unless you have a CPU with big.LITTLE architecture.

Pinning GPU Fahcore to one thread/core will be counter productive as sanity checks that run on CPU are multi threaded.
That's only if you pin the entire thread group, but if you only pin the thread then it will be the thread group leader, leaving the others free to use other cores when they need. The taskset syntax (I don't know Project Lasso syntax) would be "taskset -cp 7 $pid", not "taskset -acp 7 $pid" which would indeed be counter productive.

Actually, I've been thinking Linux this whole time. Maybe it's very different on Windows. :lol:
Last edited by arisu on Mon Apr 28, 2025 9:45 pm, edited 1 time in total.
arisu
Posts: 373
Joined: Mon Feb 24, 2025 11:11 pm

Re: Advice with using Process Lasso

Post by arisu »

Demmers wrote: Mon Apr 28, 2025 7:44 pm
toTOW wrote: Mon Apr 28, 2025 5:18 pm
Demmers wrote: Sat Apr 26, 2025 10:28 pm I came across the software Process Lasso on here today, so have it already installed on my Windows machine. I'm just curious if there are any benefits to using it, and how to. I use the Ryzen 3400G to feed my GTX 1650, don't have any performance issues with me using the computer for anything else. According to the Nvidia App, the GPU uses between 14-20% CPU. If there are any performance/efficiency gains to be had from using it, i'm all ears!
No need of Process Lasso unless you have a CPU with big.LITTLE architecture.

Pinning GPU Fahcore to one thread/core will be counter productive as sanity checks that run on CPU are multi threaded.
Great timing... I've just turned all my PL settings off! CPU Priority created too much latency, so I reverted that back to default (Idle).
And Affinity was causing issues with my USB audio DAC (random loss of data). Reset that back from cores 6-7 to all cores.... EVERYTHING now runs smoother, i.e as they were.
Conclusion? Trust the software, v8.4.9 does exactly what it needs to do.... if you use an AMD chip at least!
Yeah there's no need to adjust priority. Priority determines when a process gets cycles relative to other processes, not how many it gets. A high priority is only important for processes that have brief bursts of CPU use that need to finish ASAP, like audio and video players.

If "F" means folding, "A" means audio, and "|" means the time when there are a burst of audio samples to decode, it doesn't matter to science if your CPU process scheduling looks like FFFFF|AAAFFFFF or FFFFF|FFFFFAAA, but you'll certainly prefer the former where F is low priority!
Post Reply