T Nation

Getting Computer to Run Faster for Work


#1

So I will have to work on a simulation. It takes a bit of time each time you run it, then you have to analyse to results and tweak the simulation according to your results, then do it again, etc. Is there any way to minimize the length of the computing (I have a laptop) by changing some things, general tips, configuration, etc?


#2

Super interesting thread I know.


#3

You have to know where the bottleneck is before you can do something about it. Is your simulation graphics intensive? Are you running out of RAM? Do you have other programs unnecessarily running in the background?

One of the first things I always did on my trading computers was Control Panel -> Advanced system settings -> Advanced tab -> Performance settings -> Adjust for best performance.

Make sure you’re not running automatic updates of any sort in the middle of your workday. That goes for scans of any sort as well.

Go to Start and type “msconfig” and look at what programs are launching at startup. Disable any you don’t need.

Depending on your workstation, you can add an upgraded GPU (if not integrated), more RAM, or an SSD (less effective option).


#4

Run it in the background while you do other work…


#5

Do computers still have a turbo button these days?


#6

Add as much ram as you can. Upgrade to an SSD hard drive.

Your next step is to get a top end gaming laptop.


#7

I don’t get how a computer will help you run faster for work (is this a charity thing)?

(Sorry, my inner syntax nerd couldn’t resist)


#8

What software are you using to run the simulation?


#9

[quote]Facepalm_Death wrote:
What software are you using to run the simulation? [/quote]

Yea if this is an fea program, you could dumb down the approximation (reduce the nodes) for the trial and error portion and then ramp it up once you get close to your goal results.

Even if its not fea, i would wonder if you could apply the same principle to what you’re doing to make it easy on your computer.


#10

If you are doing CFD or FEM, don’t run your simulation on a laptop. As you refine your grid it will take significantly longer to complete each computation. If your job is half way decent they should allow you a budget to get the tools to do your job. In this case you’ll need some serious hardware.The ANSYS website provides their requirements to run their software.

http://www.ozeninc.com/ansys-system-hardware-requirements/

Basically:
Don’t use a laptop
16+ gigs of ram
fastest HD available (1-2TB)
GPU enabled graphics card.


#11

And I found this for laptops should you have no choice in the matter


#12

[quote]jasmincar wrote:
So I will have to work on a simulation. It takes a bit of time each time you run it, then you have to analyse to results and tweak the simulation according to your results, then do it again, etc. Is there any way to minimize the length of the computing (I have a laptop) by changing some things, general tips, configuration, etc?[/quote]

I’m the IT manager at work, what software and what are your laptop’s specs? As for getting it to run faster on your laptop, chances are you really don’t have any options unless it is IO limited.

The first step would be to establish what is the biggest bottleneck in your system. USUALLY, not always, the likely culprits are CPU>Storage>Memory, with CPU almost always being the huge predicting factor.

Chances are your software is limited by CPU frequency and may not be able to use more than 1-2 cores. Again, this is just a very preliminary guess based on the software out there, and of course there is always some great stuff that can’t be fed enough cores.


#13

[quote]Facepalm_Death wrote:
What software are you using to run the simulation? [/quote]

It’s a system of about 200 non-linear differential equations integrated in time in Matlab . It takes about a min or two to run, so I can’t really start to do something else before getting the results. It would be really convenient if I could get the simulation time to run in let’s say 30 sec.

My laptop is a ASUS X550C. No budget for nothing.

Thanks for the replies.


#14

[quote]jasmincar wrote:

[quote]Facepalm_Death wrote:
What software are you using to run the simulation? [/quote]

It’s a system of about 200 non-linear differential equations integrated in time in Matlab . It takes about a min or two to run, so I can’t really start to do something else before getting the results. It would be really convenient if I could get the simulation time to run in let’s say 30 sec.

My laptop is a ASUS X550C. No budget for nothing.

Thanks for the replies.

[/quote]

So it sounds like the simulation has no graphical component and is all numerical.

If you had, say, your own personal website, some hosting companies (i have justhost) will you give you ssh access to the server it’s on. You’d then be free to install matlab on the server. If you’ve never done shell scripting this could be a pain.

Is there some way you can automate via some script the tweaks that are being made after each simulation? Then just run several simulations back to back while you are on lunch or something. This approach would also work best if you had a server


#15

If ssh’ing into a machine with some balls if not an option, turn on the Matlab profiler. It will show you which calls are taking the most time. Start pruning the low hanging fruit. Vectorizing everything is what Matlab is built for, so getting rid of as many loops as you can is another good first start.

Also, 2 min sim runs are nothing to complain about.


#16

[quote]jasmincar wrote:

[quote]Facepalm_Death wrote:
What software are you using to run the simulation? [/quote]

It’s a system of about 200 non-linear differential equations integrated in time in Matlab . It takes about a min or two to run, so I can’t really start to do something else before getting the results. It would be really convenient if I could get the simulation time to run in let’s say 30 sec.

My laptop is a ASUS X550C. No budget for nothing.

Thanks for the replies.

[/quote]

Other than matlab configuration tweaks, there is nothing you can do to speed it up. Your CPU is slow, but you can’t exactly change that conveniently. You might be able to get a free Amazon cloud membership, not sure what their terms are anymore. That or Microsoft Azure.

$25-40/month will get you a much quicker dedicated server than your laptop.


#17

What type of integration are you doing? You might benefit from using a different scheme, though I dont know much about numerical methods. And you might want to try writing your code in a language like FORTRAN if you have the time. See this comparison by NASA for speeds:

https://modelingguru.nasa.gov/docs/DOC-1762


#18

Matlab can generate C or C++ code or MEX files that can run much faster. It will involve more up front work.

Calculate your hourly rate, spitball an estimate of how many man hours are involved. Get the computing resources you need to do the job. This holds true if you will be doing these types of calculations regularly for work.


#19

You could possibly overlock your CPU. I wouldn’t recommend this on a laptop however since there’s a lack of airflow and you can’t upgrade the fan/heatsink (in all cases? most?). I also wouldn’t do this if it’s a work laptop as there’s potential to damage components. If it’s not a work laptop, why the fuck are you using your own resources for work anyway?

Can someone optimize the software itself? I’d look there first; something as simple as caching intermediary results can have a HUGE impact on speed. There may be some easy gains there. There may be some slightly more involved ones. This may be helpful: http://www.mathworks.com/products/parallel-computing/parallel-computing-on-the-cloud/

Another possible avenue may be to just automate the whole thing. If you can distill the simulation tweaking, given the results, into a set of discrete deterministic steps, then you can write a program to do the tweaking for you and rerun the simulation. Then you can just let it run 24/7 until you get what you need.

More RAM is useless unless you’re experiencing disk thrashing; hard to say if this is an issue without more information… like how data is being read/stored (and from what), the processes working set size,
and how much RAM you have.

SSD will also not be helpful at all unless you’re bottlenecking on reading/writing data. Need more info.

There’s little shit you can do like increasing the priority of the process, and disabling non-essential services/processes but … it’s unlikely to have much of an effect. The biggest thing would be to disable any anti-virus software real time protection; get permission from your work if you do this.


#20

http://www.mathworks.com/products/matlab/choosing_hardware.html?s_tid=gn_loc_drop