Sign in with
Sign up | Sign in
Your question

dual processor system help

Last response: in CPUs
Share
June 8, 2004 5:52:22 PM

Hi
i wanted to implement the folling as a part of m grad course project
Here is the outline of my idea.

I always wanted to build my own dual processor system. I am currantly
fascinated by the
opteron so was hoping to build a dual opteron 64 fx system.

i was thinking, if i could write an interfacer software that would
allow the home user to
build a dual system, then load this software which i make, which would
work like so,
(this is the first step of the final software)
I (the user) would assign which operations and applications would run
on which processor
for e.g. if i have winamp 5, adobe photoshop, adobe premiere, 3d
studio max, quake 3 arena
and a viruscanner
running
i would do assign things like so
processor 1
winamp 5
virus scan
photoshop
processor 2
3d studio max
adobe premiere
quake 3 arena

and the rest of my software i can leave for auto assigning (right now
that would be done
on the basis of even distribution of numbers i.e. i would try to have
both processors run
equal number of programs)

If i can build the above system then i will update it to a more
sophisticated version where
the processor and job load assignment is based on currant system
resource availability which will be done automatically.
This is my basic idea. I havent thought it through completely.
Has this been done yet?(still researching it properly but mostly will
do it after my exams)
A friend of mine told me that this has already been done and that that
is what windows does
for him with his hyper threading pentium 4, but i want to extend this
to dual processor
systems.
anyway i had the following questions.
1. Is it a good idea?
2. Is this possible or am i thinking a bit too complicated?
3. What all do i need to learn to start on this (for example do i need
assembly language,
vb java etc... more hardware knowledge)?
4. Will windows (or any operating sotware) give my program acces
rights of this sort or is
there some way i have to integrate my software with the OS?
5. Will the companies help me some way if i ask them for it( like i
cant afford to buy
a dual opteron system, so will amd allow me to come work in their
office a couple a times
a week, (i know u cant say what AMD will say but thought i'd ask
anyway)).
6. Which server applications are available that support dual
processors which i can use for
a baseline study? ( will research after exams).
7. Any online resources u know of where i could start off?
Well please let me know what u think of my idea, and if u can answer
all my questions please.
Toms hardware has made such a software
i want to learn how to do it anyway so i can use that knowledge elsewhere and it will help in my course too

i emailed but they arent replying (was hoping they would)
Anyway let me know how i can go about building this system
Thanks

More about : dual processor system

June 8, 2004 11:22:15 PM

Quote:
the processor and job load assignment is based on currant system resource availability which will be done automatically

Which is exactly what SMP enabled OSs like windowsXP or Linux do already. The only reason Tom made such software was because some programs don't respond well to HT (for obvious reasons) and you might want to switch HT off for those programs. The guys over at 2cpu.com weren't too impressed though. An Opteron based system won't ever encounter such difficulties. Specifying which processor a process should run will prevent processes switching to the idle CPU, not very clever in a multitasking environment.

<A HREF="http://www.anandtech.com/myanandtech.html?member=114979" target="_new">My PCs</A> :cool:
June 10, 2004 9:31:29 PM

Yes, letting your OS handle it is the best idea.

Sometimes if I'm running a very CPU intensive multithreaded task and I want to use the computer for something else I'll just assign the task to one processor, but that only happens once a month at the most. And it's easily done in Windows task manager.

*Dual PIII-800 @900 i440BX and Tualeron 1.2 @1.7 i815*
Related resources
June 11, 2004 3:23:09 AM

firstly thanks for replying
ok i have tried to research my idea and i have been told by alomst everyone that its futile what i am doing and windows does it anyway

the inportant thing actually for me is to actually learn from doing this
leran different languages, assembly how to use system resources, program really hi tech....
thats what i am trying to do actually
so i was hoping people would suggest what i need to learn to do all this
if you know please let me know
June 11, 2004 8:28:24 AM

there is no opteron 64 fx, either amd athlon 64 fx or opteron

thank you

wish if there was UnDo in the life
June 11, 2004 8:51:36 AM

1. Is it a good idea?

No, as explained by others.

2. Is this possible or am i thinking a bit too complicated?

You can set cpu/thread affinity, easy enough. You can not however, overrule the OS.

3. What all do i need to learn to start on this (for example do i need
assembly language,
vb java etc... more hardware knowledge)?

C(++) would do, or even VB. Java seems like a silly language to try this. No need for assembler.

4. Will windows (or any operating sotware) give my program acces
rights of this sort or is
there some way i have to integrate my software with the OS?

Affinity, yes you can, but the OS may decide to assign the thread to a different cpu nevertheless. If you want to change that, you'll need the windows source code and rewrite the scheduler. now there is a challenge !

5. Will the companies help me some way if i ask them for it( like i
cant afford to buy
a dual opteron system, so will amd allow me to come work in their
office a couple a times
a week, (i know u cant say what AMD will say but thought i'd ask
anyway)).

LOL! No way. Definately not for a project that will bring them nothing. However, there are some systems available to developpers that you can use remotely to compile/test your software. Ask Intel or AMD how to gain access to them, but be adviced, they will run Linux most likely, and you will be severly restricted in what you can do.

6. Which server applications are available that support dual
processors which i can use for
a baseline study? ( will research after exams).

Pretty much any server app.

7. Any online resources u know of where i could start off?

Sorry, no. However, I think you will be better served rethinking your plan. If you want to learn about SMP, threading, assembler, C, that is a LOT to digest. Start simple, just write a simple threaded app to do some basic calculus using all cpu's. Go from there.

Another interesting source of info could be Minix, which is a microkernel OS designed for educational purposes. You can download the source, buy the book, it should be very interesting for anyone interested in learning how an OS works. Start <A HREF="http://www.cs.vu.nl/~ast/minix.html" target="_new"> here </A> You really need to understand the basics (which are complicated enough already) before thinking you can improve windows or linux.

>Toms hardware has made such a software
>i want to learn how to do it anyway so i can use that
>knowledge elsewhere and it will help in my course too

You could ask them for the sources, since its really nothing revolutionary, they may well give them for educational purposes. Its not going to teach you a lot though.

= The views stated herein are my personal views, and not necessarily the views of my wife. =
!