Speed up MATLAB code on Linux Cluster - repost

In Progress

Description

Hi there,

For a customer I've got a matlab project:

I've got a quite large matlab code that takes a a long time to run. Toe code solve an economic model numerically and consists of two main part: The first part solves an analytic equiation of on a large multidimensional grid (similar to the finite elements method). The second part simulates the model using random numbers and the solutions found in the first part. Part 1 is about 90 lines including emtpy lines (see EGM_parfor.m), and part 2 is about 160 lines (see Simulate.m). Both files use similar functions.

The code runs fine, but it doesn't scale well and the speed up is not so large when i run on multiple cores. What I'd like help with is:

EGM_parfor.m:

Optimize the code so that it runs faster in parallel. Please leave inputs and outputs unchanged so I don't need to alter the code in any other place in order to use the changes.

* There is probably a lot of performance to gain by correctly accessing the memmory ex by accessing data in colunmns and avoid creating unneccesary variables as outlined in [url removed, login to view])

* There might be some help on this blog?: [url removed, login to view] (But the code don't have many matrix multiplications)

Simulate.m:

This code is not yet parallelized. It is much quicker than the EGM_parfor, but still a little slow. Please leave inputs and outputs unchanged so I don't need to alter the code in any other place in order to use the changes.

* Please optimize the code to run faster, maybe some of the tricks from above?

* Further, please paralellize the code by adding an "outer" loop around it that divides the code into N "chunks" that each run on a separate matlab worker. For example, if there is 100k simulations and N=4, then create a parfor-loop that runs the first 25k simulations in the first iteration, simulations 25001-50k on the second iteration, and so on.

I attach the files you need to see in order to make a bid. Once I've decided on a bidder I will send all of the files as a .zip-file.

In order for me to take your bid seriously please write a few sentences about your experience of using PCT and MDCS in general and your experience with optimizing such code on a 64bit linux cluster specifically.

I will put all the money on escrow, but not release the payment until I'm 100% satisfied that the code is working as before, but substantially faster. I expect a code improvement of around 10 times (EG_parfor + Simulate). If you can speed it up as much as 50 times I will double your bid as payment, 100 times tripple it.

Skills: Algorithm, Engineering, Mathematics, Matlab and Mathematica, Physics

See more: your engineering solutions, what is parallel programming, what is multidimensional data, what is multidimensional, what is a loop in programming, up as, the economic times, programming with matlab, programming patterns, programming on linux, programming in matlab, programming in mathematica, payment method using escrow, patterns for parallel programming, parallel programming patterns, parallel programming in c, parallel patterns, multidimensional data model example, multidimensional data, matrix articles, mathworks, i need part time worker, finite it, finite com, escrow payment solutions

Project ID: #5491255

Awarded to:

erasiterajiv

I am expert in optimizing matlab code. I have efficient experience of using PCT and MDCS in general and optimization of code on a 64bit linux cluster.. Kindly send your response asap. With best regards, Rajiv Kum More

$188 USD in 5 days
(0 Reviews)
0.0

6 freelancers are bidding on average $784 for this job

enggworks

Hello, I hold a PhD in communication engineering. I have done all simulations in Matlab and am quite good in optimizing Matlab codes. I do not have access to a linux cluster. Besides, I have had little success ge More

$222 USD in 15 days
(12 Reviews)
5.0
mariannedelcu

MBA and PhD in physics. Large experience in complex phenomena simulations using Matlab. I will be glad to help you. Please send a message back to establish the details.

$250 USD in 30 days
(33 Reviews)
4.5
ardiles1309

Hello, I am a chemical engineer with a lot of experience in modeling and simulation. I have also developed some MATLAB models for science and engineering. I have placed a bid but this can only be precise if a further More

$500 USD in 10 days
(4 Reviews)
2.3
stephanembinky

I'm electronic's engineer and I worked in similar projects regarding optimization of code. I provide a well-done projects and on-time delivery. If we work together I'll be available anytime if you have questions about More

$211 USD in 15 days
(0 Reviews)
0.0
CJentzsch

Are you interested in an extremly fast CUDA implementation running on GPUs? I could provide one. I have experience in the parallelization of algorithms. On my last project (not on freelancer.de, I am new to this site) More

$3333 USD in 30 days
(0 Reviews)
0.0