Help with setup of i5 4590 plus nvidia GTX960

bzbro_000
bzbro_000
Joined: 30 Jul 15
Posts: 20
Credit: 17,928,980
RAC: 0
Topic 198341

i-5 4590 & nvidia 960 & 8 gigs ram

Is there a setup that someone can provide me to best utilize this computer?

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 4,926
Credit: 30,466,401,474
RAC: 34,669,338

Help with setup of i5 4590 plus nvidia GTX960

By looking at your computer's current list of tasks, your discrete GPU is doing Parkes PMPS XT (BRP6) and your CPU cores are doing Gamma Ray Pulsar (FGRP4) tasks. These are currently the only available options for CPU cores and the discrete GPU. It would also be possible to crunch Arecibo BRP4 tasks on the internal GPU, but that requires some research on your part into drivers that work properly, particularly for Windows 10 where the jury is still out. There are existing threads, specific to Windows 10, that you should read through. I run Linux so I have no direct experience on using the internal GPU.

To best utilize your computer, you need to experiment with how many of each type of tasks you decide to run. You could expect to run at least 2 and possibly 3 or even 4 concurrent GPU tasks on the GTX960. You should start at 2 and crunch enough tasks to be able to measure the improvement in output compared to running singly. You could then try 3 and then check for further improvement. I would expect there would be some. You probably wouldn't need a free CPU core when running 2x but you probably would when running 3x in order to get the best GPU performance. I don't have any 960s but if you're lucky, someone who has may respond with their findings. At the end of the day, you'll only really know for sure if you experiment for yourself.

Have you looked through the E@H project preferences on the website? This is where you setup which apps you want to run and which GPUs BOINC is allowed to use. It's also where you can choose to run test apps. There is currently a beta test app for BRP6 which will give about 20% better performance than the one you are currently using. There is also the GPU Utilization factor which is a simple way to run multiple concurrent GPU tasks. The warning is simply for CYA purposes. You will create a bit more heat if you work the GPU harder so you are being warned that it's your responsibility to ensure proper cooling.

The disadvantage of this factor is that it will not reserve any CPU cores for GPU support until you were running 5x (for nvidia GPUs). It should be fine to try 2x and maybe even 3x without having a free CPU core but you really should investigate the output difference a free CPU core might make. To do that, you would need to construct a configuration file (app_config.xml) to give precise control. This file is documented here, under the heading 'Application Configuration' towards the bottom of the page. You would certainly need this file if you wanted to use the Intel GPU and there are recent examples that have been posted that we could point you towards.

Please have a think about the above and let us know what you want to do. There is no simple 'one size fits all' solution.

EDIT: Seeing as you have a 960, you should browse through this thread which should be of interest to you.

EDIT2: This recent message by Holmis shows examples of app_config.xml files where both a discrete nvidia GPU and an Intel GPU were used for crunching. The first example there shows the control of three separate apps, the old cuda32 app, the beta cuda55 app and the app for the Intel GPU (all BRP6 apps). The second smaller example shows how to run BRP4 (Arecibo) tasks on the Intel GPU. With best performance in mind, the cuda55 app for the 960 combined with the BRP4 app for your Intel GPU may be a possible config to consider, providing you can get a working Intel GPU driver for Win 10. You'll need to digest a lot of stuff before you get to that decision though :-).

Cheers,
Gary.

bzbro_000
bzbro_000
Joined: 30 Jul 15
Posts: 20
Credit: 17,928,980
RAC: 0

Thanks Gary, To be

Thanks Gary,

To be brutally blunt, I have no clue!! LoL! I will sit down and start reading through the stuff you sent. Thanks for taking time to write back.

Happy New Year
Mike Brown

Zalster
Zalster
Joined: 26 Nov 13
Posts: 2,976
Credit: 3,209,606,436
RAC: 1,995,151

Extremely late to this party

Extremely late to this party (pun intended)

960 aren't much better than the 750Ti so 2 work units at a time are going to be your best bet.

Gary is right, you are running the Parkes (cuda 32) version. You would be better off using the Beta version.

On your account page, middle of the page is Einstein@home Preferences. Click there

Under the default preferences click to edit.

Just after "Use Intel GPU" is the

Quote:
Run test applications?

check this box.

Next time it downloads the Parkes work unit, it will run the (cuda 55) version.

This version is much faster than than the older cuda 32 and lends itself to running more than 1 work unit

That i5 is a Quad core.

You are going to want to leave at least 1 core free to support that GPU if running more than 1 GPU work unit.

Next, Is this going to be a pure crunching computer or will you be using it for other things?

If it's a pure cruncher, then I would limit the CPU to 3 work units only. The 2 Work units on the GPU will use under 1 core so that will leave some for other operations of the OS.

If you choice to try 4 CPU work units with 2 GPU work units, you are probably going to see the GPU slow down.

If you do 4 CPU work units with only 1 GPU work unit, then you probably won't see much of a slow down.

So it becomes a question of which do you want, more CPU (Gamma Rays) or more more Parkes (pulars)

I'd go with 3 CPU and 2 GPU work units.

Do you know how to make a xml file? and do you know where the Einstein@home folder is?

I can make you an app_config.xml that will run 3 CPU and 2 GPU but you need to know how make the xml first and where to place it.

If you don't, that's ok, just say so and we can walk you thru it.

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 4,926
Credit: 30,466,401,474
RAC: 34,669,338

RE: Thanks Gary, You're

Quote:
Thanks Gary,


You're most welcome!

Quote:
To be brutally blunt, I have no clue!!


Nor did I when I first started :-). Funny thing is it's pretty much the same story for most of us when we first start. It's really just a matter of slowly building up your expertise.

You have a nice machine. It's actually performing quite well at the moment. With just a couple of fairly simple changes you will be able to improve that. Here is a list of tasks currently being processed. The GPU tasks (Parkes PMPS XT) are taking just over 2 hours to complete (run time). Of that, the CPU time being used to service the running of the GPU task is only about 15 mins. On the CPU cores, you are running Gamma Ray Pulsar tasks (FGRP4). You have 4 cores so you should be seeing 4 crunching simultaneously. Each one is taking a little less than 6.5 hours on average. Notice the difference in CPU time and run time. Some of that difference is being used to run the machine itself and any of your other activities. Some of it is also contributing to the GPU support mentioned previously.

NVIDIA GPUs don't tend to need a lot of CPU cycles for GPU support. To start with, you should try running two concurrent GPU tasks (2x) and measure the output improvement over running tasks singly (1x). Once you have quantified that improvement, you could change to 3x to see if there is any further improvement. You need to run enough tasks at each setting to be able to measure a proper average because there will always be some variation in times.

Here is a first installment of changes to make with a view to optimising your output.

  • * Go to your account page on the website and click on the Einstein preferences link.
    * You will see a page of default preferences. Click on the 'Edit preferences' link below these.
    * On the next page, tick the box for 'Run test applications?'
    * For the 'Run only the selected applications' section, remove the tick for the two Arecibo runs and leave the tick in place for the last two (Parkes and Gamma-ray pulsar).
    * Change the value for 'GPU utilization factor of BRP apps' from '1' to '0.5'
    * Click the 'Update preferences' link at the bottom.

The changes in preferences will not happen immediately. They will be communicated to the BOINC client when it next contacts the server. By allowing test applications, you will get a download of the cuda55 app. By changing the GPU utilization factor, your machine will crunch GPU tasks 2x. This will only happen after new GPU work is downloaded. You can force new work immediately by making a small increase in the 'days of work stored on your computer' preference setting. You can make this change locally in BOINC Manager (Advanced view - tools -> computing preferences -> network usage tab) just to get some new work and then revert to using global preferences by using the 'clear' button in the top right corner of the same tab after the new work has arrived. Local preferences override the corresponding global preferences set on the website.

If you implement these changes you should end up running 4 CPU tasks and 2 GPU tasks simultaneously. You will get two improvements, from the new app and from running 2x. You should let this run for a couple of days at least before making any other changes. I'll keep monitoring your machine and give you any further changes after that.

Quote:
I will sit down and start reading through the stuff you sent. Thanks for taking time to write back.


Please do that and don't be afraid to ask questions about anything you come across that you can't figure out.

Quote:
Happy New Year
Mike Brown


Same to you. Good luck with the changes.

Cheers,
Gary.

bzbro_000
bzbro_000
Joined: 30 Jul 15
Posts: 20
Credit: 17,928,980
RAC: 0

Good Morning Gary, Thanks

Good Morning Gary,

Thanks Again!! Woo Hoo!! Made the recommended changes you suggested and I will let the computer run for a couple of days and see how it performs.

This is a home built with an older generation b85 motherboard. The biggest improvement I made was the SSD! I am a gamer most of the time and built this system as my 1080p gaming machine. For 500 bucks in parts it runs really well.

At this point the only real upgrade I could see is moving to an i-7 cpu, BUT for gaming it really won't make any difference in 1080p.

I did notice that I am only using 40% of the memory on the motherboard, it had assigned 264 mb to each cpu core as per task manager. I didn't mess with any other settings that the one's you recommended.

Now we wait and see how this thing does
Mike Brown

bzbro_000
bzbro_000
Joined: 30 Jul 15
Posts: 20
Credit: 17,928,980
RAC: 0

Hey Zalster, I used Gary's

Hey Zalster,

I used Gary's recommendation's for the settings in einstein@home computer preferences.

I saw in the computing preferences that I could change the CPU use settings? Even after I did that I did not see a change in task manager????

I did the tick to update the cuda.

How do you force the einstein@home computing preferences to drop to 3 cpu's??

Once Again Thanks To You AND Gary for your help!

Mike Brown

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 4,926
Credit: 30,466,401,474
RAC: 34,669,338

RE: Made the recommended

Quote:
Made the recommended changes you suggested and I will let the computer run for a couple of days and see how it performs.


By selecting just the PMPS XT tasks from your full tasks list, we can see you now have some tasks for the cuda55 app and there is currently just one cuda32 task left to finish (at the time of writing). Since you have a small work cache size, this has allowed the transition to the new test app to be very quick.

You will be running 2x on the GPU. Previously, GPU tasks were taking of the order of 7,600 seconds. They will take longer than that but two will be done in that time. My guess is that you will find the time for two will be around 11,000 seconds or so. As long as it's something less than 15,000 seconds, you will have gained in performance.

Quote:
This is a home built with an older generation b85 motherboard. The biggest improvement I made was the SSD! I am a gamer most of the time and built this system as my 1080p gaming machine. For 500 bucks in parts it runs really well.


As I said, it's a nice machine - very fit for purpose (whatever that purpose might be ;-) ). If you find that running multiple GPU tasks affects gaming performance, you can just suspend BOINC for the duration and resume it later. The BOINC Manager activity menu has options for suspending various things. Don't forget to resume after you finish gaming if you use this :-).

Quote:
At this point the only real upgrade I could see is moving to an i-7 cpu, BUT for gaming it really won't make any difference in 1080p.


It wouldn't make any significant difference to GPU crunch times either. I use budget boards and an i3 with HT if I want a 4 core GPU cruncher.

Quote:
I did notice that I am only using 40% of the memory on the motherboard, it had assigned 264 mb to each cpu core as per task manager. I didn't mess with any other settings that the one's you recommended.


It's good to see plenty of free memory. You really don't want to risk any swapping if you can avoid it. The OS should be smart enough to make good use of the free memory so it's not as if it is being wasted.

Quote:
Now we wait and see how this thing does
Mike Brown


Indeed, we wait with bated breath .... :-).

Cheers,
Gary.

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 4,926
Credit: 30,466,401,474
RAC: 34,669,338

RE: My guess is that you

Quote:
My guess is that you will find the time for two will be around 11,000 seconds or so.


Well, that guess wasn't too bad. A pair of cuda55 tasks has now been returned with elapsed times of 10,700 and 10,900 seconds. The average crunch time for a single task is therefore 10,800/2 = 5,400 seconds. You now look like you will be taking around 70% of your previous 7,600 second time. Of course this is way too early to make such a claim so please leave things as they are until you have at least 20 results. At 5400 seconds per task, that equates to 16 tasks per day. The theoretical credit for that would be around 70K.

Your CPU results take around 23,000 seconds in which time you should complete 4 tasks. This translates into 5750 seconds for each task or 86400/5750 = 15 tasks per day. The theoretical credit for the CPU task contribution would be approximately a further 10K - grand total around 80K. Your current RAC shows as around 25K so, depending on what proportion of a day BOINC is active, you should see your RAC rising quite strongly over the coming days and weeks. It can take up to 30 days to reach a plateau.

Congratulations on having made a significant improvement to your crunching efficiency. Once things settle and we are sure of the numbers, I'll suggest a further tweak.

EDIT: Please note that the CPU task times may increase a little from the 23,000 second figure mentioned above because of running GPU tasks 2x. I wouldn't expect very much of an increase, however.

Cheers,
Gary.

Gary Roberts
Gary Roberts
Moderator
Joined: 9 Feb 05
Posts: 4,926
Credit: 30,466,401,474
RAC: 34,669,338

In my first reply to your

In my first reply to your initial request for setup help, I mentioned the GPU utilization factor that you have now set to 0.5 in order to crunch GPU tasks 2x. I thought I should give you a bit of a 'heads-up' about how this works and why you are going to be not using it in the next stage of tweaking.

When GPU tasks are sent out by this project, they contain a default recommendation as to what resources (both CPU and GPU) might be needed to crunch each task. It's only a rough estimate and, depending on exactly what hardware you have, may not accurately reflect what is really needed in each individual case. Because of the differences between AMD and NVIDIA GPUs, there are two different defaults, one for each GPU brand.

For a task crunched on an NVIDIA GPU, the estimate is that 1.0 GPUs plus 0.2 of a CPU core will be required to 'service' the crunching of the task. For AMD, the values are 1.0 GPUs plus 0.5 CPUs - a much bigger CPU component.

For your GTX960, when you set the GPU utilization factor, all you are doing is changing the 1.0 GPUs to 0.5 GPUs without altering the 0.2 CPUs. Your BOINC client sees these fractions and decides that two GPU tasks can be run simultaneously in order to fully 'use up' your GPU. At the same time, it also calculates that 2x will require a total of 0.4 CPUs for support. Because this is not a full CPU, it will allow a CPU task to run to 'use' the residual 0.6 CPUs not needed for GPU support. So, you would need to be running 5x before BOINC would decide to run only 3 CPU tasks rather than 4.

We talk about this as "leaving a free core" but in fact the OS will be grabbing the needed CPU cycles from wherever it can at the instant the cycles are needed. Having only 3 CPU tasks running just means that there will likely be less delay in doing this.

The problem is that the GPU utilization factor doesn't provide a means for tweaking the fractional CPUs requirement. The mechanism we need to do this is in the form of a configuration file called app_config.xml which you will need to create and place in your Einstein project directory. In my first post I gave you a link to where this file is documented. It's not as complicated as it looks at first glance because we will be leaving out a lot of options that are not needed.

When we decide to try 3x instead of 2x, we could do it with a single change to the GPU utilization factor from the current 0.5 to a new value of 0.33. That would allow the full GPU to be used by 3 tasks and would also allocate 0.6 CPUs for support. Because this is still not a full CPU, BOINC would still allow 4 CPU tasks to be crunching at the same time as the 3 GPU tasks. We will do that anyway just to see if your machine can not only cope, but also show further improvement. Once we have tested that, we will use app_config.xml to change the CPU support requirement from 0.2 to 0.34. With 3 GPU tasks running this will require 1.02 CPU cores for support leaving 2.98 cores for CPU tasks. So, under these conditions, the mix would be 3x on the GPU and 3 CPU tasks. We call this "freeing up a CPU core". What it will do is allow the 3 GPU tasks (and also the 3 CPU tasks) to run somewhat faster. It will remain to be seen if the loss of a CPU task is outweighed (or not) by the speedup of these 6 tasks. I don't know the answer because I don't have a GTX960.

If you have any spare time while you're waiting for your machine to crunch enough tasks at 2x, please have a look through the documentation for app_config.xml.

Cheers,
Gary.

bzbro_000
bzbro_000
Joined: 30 Jul 15
Posts: 20
Credit: 17,928,980
RAC: 0

Good Morning

Good Morning Gary,

Adjusted the gpu to .33 and let it run. Computer seems to be happy. Woo Hoo!!

I hope to get to the app_config.xml studies this week. My eldest spawn college kid does xml coding all the time. Unfortunately the college is a half a day drive away.

Again thanks for all your help. Hopefully with the xml fix this computer will become a crunching machine!

Have A Blessed Day
Mike Brown

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.