By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,264 Members | 1,056 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,264 IT Pros & Developers. It's quick & easy.

Help with parallel processing

P: 6
I'm running Access 2003, and I've got a CPU intensive application that takes hours (or more) to run. Fortunately, I can logically split up the task so it can run in smaller pieces independently.

I've got a dual core (4 CPU) processor, and if I copy my application manually, I can run up to four of these copies in parallel using 100% of my CPU's capacity. On the coolness scale, this rates as "very cool".

I'd like to take this to the next level, and that's where I need some guidance. In short, is it possible for me to use Access to open and run different instances of the same Access application at the same time? And if so, would they run on different threads so my OS can assign them to different processors? And how might I go about this?

Cheers,

R.
May 30 '08 #1
Share this Question
Share on Google+
4 Replies


Expert 100+
P: 374
I've got a CPU intensive application that takes hours (or more) to run. Fortunately, I can logically split up the task so it can run in smaller pieces independently.

I've got a dual core (4 CPU) processor, and if I copy my application manually, I can run up to four of these copies in parallel using 100% of my CPU's capacity. On the coolness scale, this rates as "very cool".

I'd like to take this to the next level, and that's where I need some guidance. In short, is it possible for me to use Access to open and run different instances of the same Access application at the same time? And if so, would they run on different threads so my OS can assign them to different processors? And how might I go about this?

Cheers,

R.
RKlawton,

My first question to you is, is the backend of the application an MS Access tables? or is it on another backend like MS SQL or Oracle?

If the answer is that it's on a MS Access Backend, it is very possible, but also very dangerous to do. You run an extremly high risk of data curruption, and even database damage when you start to overload the Process of the one machine that has the Backend database.

If you are currently just moving part of the data to each instance and then running it separatly, then you'll have to create a way that you can combine the data again without loosing referencial integerety between all the data tables. That's a tall order to say the least, but it is very possible.

Let me know how you have yourself setup currently and how you want to take it to the next level.

Thanks,

Joe P.
May 30 '08 #2

P: 6
Hi Joe,

Yes, the backend is Access. I'm not sure what you mean by overloading. When I run one instance, one of the processors maxes out. When I run two instances (at present, I create a copy of my database and run both copies), then two processors max out. Since I have four processors, I would probably stop at three so that I have one processor free to run other applications like e-mail, web browsing, etc.. I've tried it with four instances with good results, too, but this effectively left me without a computer for the duration. Though I admit it was fun to see my CPU screaming at 100%.

All this processing merely creates new records in a new table. Therefore, combining the results from each instance should be as simple as merging these new records.

Thoughts?

R.
May 30 '08 #3

Guus2005
P: 3
Running X instances of your FE on separate processors on a single machine, is the same as running X instances of your FE on X other machines.
In my company, we have one BE and about 9 users that use the same FE(for security reasons) on their machine. This is not a problem for Access 97 and not for Access 2007.
So it shouldn't make a difference.

Let me know if you have split a single process on a single FE onto more processors. Then you might run into difficulties. Because Access wasn't build for this purpose.

HTH:D
Jun 1 '08 #4

P: 6
I'm wondering if it might work out simply by creating new workspaces via VBA and opening a different instance of the same application in each workspace. That is, would the OS think of this as a single thread or a separate thread per workspace? If so, then I might be in luck. Anyone with any experience using multiple workspaces in this way?
Jun 4 '08 #5

Post your reply

Sign in to post your reply or Sign up for a free account.