Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro speed capacity on HyperThreaded systems
I created an application for a client, where the primary macro performs
several thousand VBA calculations on each of 50 worksheets in successive order. The macro is efficient and runs without problems. My client is running this app on a Windows XP system (Excel2003) with dual processors in HyperThread mode to emulate 4 processors. Right now the macro runs on 1 processor while the other 3 processors are idle. The client wants to shorten the macro's run time (currently at 17 minutes) by utilizing the other 3 processors on that system. Their system is similar to the specs found here on Dell's site: http://www1.us.dell.com/content/prod...s=&l=en&s=dfh& Questions: (1) Does Excel, VBA, or API provide for code that recognizes a system that has Hyper-Thread technology? (2) Has anyone written or seen code to direct the Hyper-Thread system to allocate or involve its multi-processor resources into bearing an equal burden for running the macro, which theoretically would decrease the run time to 25% of what it is now (given this client's system of dual HyperThread processors). Basically the question is, can a macro can be written to run multi-threaded across multiple processors? It seems to me that a macro by nature can be run only from one "run point", that being a single processor or computer, but maybe there's an opportunity to tap into HyperThread technology to reduce run times, if it's possible to be programmed to do so. Any thoughts or places to point me to? I did a search on Google but found very little info on this topic. Thanks, any ideas are welcome. Tom Urtis |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro speed capacity on HyperThreaded systems
Hi
AFAIK VBA does not provide any support for threading -- Regards Frank Kabel Frankfurt, Germany "Tom Urtis" schrieb im Newsbeitrag ... I created an application for a client, where the primary macro performs several thousand VBA calculations on each of 50 worksheets in successive order. The macro is efficient and runs without problems. My client is running this app on a Windows XP system (Excel2003) with dual processors in HyperThread mode to emulate 4 processors. Right now the macro runs on 1 processor while the other 3 processors are idle. The client wants to shorten the macro's run time (currently at 17 minutes) by utilizing the other 3 processors on that system. Their system is similar to the specs found here on Dell's site: http://www1.us.dell.com/content/prod...spx/precn_360? c=us&cs=&l=en&s=dfh& Questions: (1) Does Excel, VBA, or API provide for code that recognizes a system that has Hyper-Thread technology? (2) Has anyone written or seen code to direct the Hyper-Thread system to allocate or involve its multi-processor resources into bearing an equal burden for running the macro, which theoretically would decrease the run time to 25% of what it is now (given this client's system of dual HyperThread processors). Basically the question is, can a macro can be written to run multi-threaded across multiple processors? It seems to me that a macro by nature can be run only from one "run point", that being a single processor or computer, but maybe there's an opportunity to tap into HyperThread technology to reduce run times, if it's possible to be programmed to do so. Any thoughts or places to point me to? I did a search on Google but found very little info on this topic. Thanks, any ideas are welcome. Tom Urtis |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Macro speed capacity on HyperThreaded systems
Thanks Frank, I am suspecting as much.
Maybe on this one, the brick wall I am running into really is a brick wall. Tom Urtis "Frank Kabel" wrote in message ... Hi AFAIK VBA does not provide any support for threading -- Regards Frank Kabel Frankfurt, Germany "Tom Urtis" schrieb im Newsbeitrag ... I created an application for a client, where the primary macro performs several thousand VBA calculations on each of 50 worksheets in successive order. The macro is efficient and runs without problems. My client is running this app on a Windows XP system (Excel2003) with dual processors in HyperThread mode to emulate 4 processors. Right now the macro runs on 1 processor while the other 3 processors are idle. The client wants to shorten the macro's run time (currently at 17 minutes) by utilizing the other 3 processors on that system. Their system is similar to the specs found here on Dell's site: http://www1.us.dell.com/content/prod...spx/precn_360? c=us&cs=&l=en&s=dfh& Questions: (1) Does Excel, VBA, or API provide for code that recognizes a system that has Hyper-Thread technology? (2) Has anyone written or seen code to direct the Hyper-Thread system to allocate or involve its multi-processor resources into bearing an equal burden for running the macro, which theoretically would decrease the run time to 25% of what it is now (given this client's system of dual HyperThread processors). Basically the question is, can a macro can be written to run multi-threaded across multiple processors? It seems to me that a macro by nature can be run only from one "run point", that being a single processor or computer, but maybe there's an opportunity to tap into HyperThread technology to reduce run times, if it's possible to be programmed to do so. Any thoughts or places to point me to? I did a search on Google but found very little info on this topic. Thanks, any ideas are welcome. Tom Urtis |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Speed up macro | Excel Discussion (Misc queries) | |||
Help, need to speed up this macro | Excel Discussion (Misc queries) | |||
Speed up macro | Excel Discussion (Misc queries) | |||
Speed-up macro | Excel Programming | |||
MACRO Speed? | Excel Programming |