ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Macro speed capacity on HyperThreaded systems (https://www.excelbanter.com/excel-programming/316997-macro-speed-capacity-hyperthreaded-systems.html)

Tom Urtis

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



Frank Kabel

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




Tom Urtis

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







All times are GMT +1. The time now is 06:24 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com