Multi core greater than 80 core

Message boards : Number crunching : Multi core greater than 80 core
Message board moderation

To post messages, you must log in.

Previous · 1 . . . 4 · 5 · 6 · 7 · 8 · Next

AuthorMessage
Profile BilBg
Volunteer tester
Avatar

Send message
Joined: 27 May 07
Posts: 3720
Credit: 9,385,827
RAC: 0
Bulgaria
Message 1104015 - Posted: 7 May 2011, 3:04:07 UTC - in response to Message 1103994.  


The example for Boinc shows that even for the "single function call", that was still unexpected enough to have needed quite a few days to discover and fix.

Again, if u consider this a problem, quit programming, really. Such systems are rare enough to worry about on wide basis. If your application is targeted for such systems, you would be well aware what to except, or, u can learn it in 10 minutes, like I did from MSDN. Or, u will learn it in hard way, like BOINC did.

Maybe the problem BOINC faced is that when the first BOINC was made (~2005 ?)
the description of the GetSystemInfo Function given by Microsoft maybe was:
GetSystemInfo returns "The number of logical processors in the system"

and now (when bigger systems exist and they invented "processor groups") Microsoft changed the description to:
GetSystemInfo returns "The number of logical processors in the current group"

If you have Microsoft compiler from 2005 (or older) can you check in its help files what is the description of the GetSystemInfo Function?


 


- ALF - "Find out what you don't do well ..... then don't do it!" :)
 
ID: 1104015 · Report as offensive
hbomber
Volunteer tester

Send message
Joined: 2 May 01
Posts: 437
Credit: 50,852,854
RAC: 0
Bulgaria
Message 1104058 - Posted: 7 May 2011, 8:38:10 UTC
Last modified: 7 May 2011, 8:49:04 UTC

It says it in the old way - "Number of processors in the system.". MSDN from 2005, I'm still using VS 2005.
Although misleading with its new behavior, it doesn't change anything. Old applications, which are not able to get right number of processor when using this function, are probably unaware of existence of nodes and how to optimize their thread grouping on different nodes anyway and they don't expect to run on that large systems at all.
One of the rare cases when u need to know how many processors are on your disposal, is when creating I/O completion port and defining number of active threads. And even then old application would keep 128(its not fixed number, its just best having 2 threads per processor) active threads. But, note, they would be automatically scaled on other available processors, no matter how many processors this application is aware of.
ID: 1104058 · Report as offensive
Profile ML1
Volunteer moderator
Volunteer tester

Send message
Joined: 25 Nov 01
Posts: 20289
Credit: 7,508,002
RAC: 20
United Kingdom
Message 1104073 - Posted: 7 May 2011, 13:07:24 UTC - in response to Message 1104058.  
Last modified: 7 May 2011, 13:09:00 UTC

It says it in the old way - "Number of processors in the system.". MSDN from 2005, I'm still using VS 2005.
Although misleading with its new behavior, it doesn't change anything. Old...


It is still misleading, and the default for the changed behaviour in Windows for backwards compatibility caused a problem for Boinc that has taken time to fix.

Unfortunately, such problems are 'not unusual' in the Windows world. For (all?) other operating systems, perhaps 'greater care' is taken to maintain backwards compatibility or to give a drop-dead meaningful error message. Hence, things should work as intended, or, the program is stopped dead to force whatever problem due to 'whatever has changed' to be fixed.

I'm sorry, but there is great suspicion when there is a very deliberate marketing policy to force people to continuously upgrade and pay.

Sorry, your earlier response is meaningless. It looks like you don't want to usefully compare OS features. And you are blind to the computer science of schedulers. Please enjoy your ultimate can-never-be-improved OS.


Meanwhile, at least Linux is fully open to all scrutiny and from that, to meaningful improvement.

Good kudos to the Boinc development that the fix for Windows is being put in place as quickly as possible.


Happy fast computin',
Martin
See new freedom: Mageia Linux
Take a look for yourself: Linux Format
The Future is what We all make IT (GPLv3)
ID: 1104073 · Report as offensive
hbomber
Volunteer tester

Send message
Joined: 2 May 01
Posts: 437
Credit: 50,852,854
RAC: 0
Bulgaria
Message 1104077 - Posted: 7 May 2011, 13:13:35 UTC
Last modified: 7 May 2011, 13:15:33 UTC

Thank you for ruining consequent thread with unnecessary Linux bloat. It is certainly not the way to convince Linux is better OS.
I promise to report your posts every time they go even slightly out of topic from now on.
ID: 1104077 · Report as offensive
Profile ML1
Volunteer moderator
Volunteer tester

Send message
Joined: 25 Nov 01
Posts: 20289
Credit: 7,508,002
RAC: 20
United Kingdom
Message 1104078 - Posted: 7 May 2011, 13:20:32 UTC - in response to Message 1104077.  

Thank you for ruining consequent thread with unnecessary Linux bloat. It is certainly not the way to convince Linux is better OS.
I promise to report your posts every time they go even slightly out of topic from now on.

Hardly. I was hoping you would offer your expertise to shed some light on the comparison of schedulers and explain how the Windows kernel scheduler is better or not and how the Windows Groups is the only way to go... And worth the extra programming effort.

I'm genuinely interested in how Windows does it's scheduling. However, detailed information on the web is scant. Is it all secret and 'proprietary'?

This issue gets all the more important as we move to ever more processor cores in systems.

Happy fast crunchin',
Martin


See new freedom: Mageia Linux
Take a look for yourself: Linux Format
The Future is what We all make IT (GPLv3)
ID: 1104078 · Report as offensive
hbomber
Volunteer tester

Send message
Joined: 2 May 01
Posts: 437
Credit: 50,852,854
RAC: 0
Bulgaria
Message 1104079 - Posted: 7 May 2011, 13:29:31 UTC
Last modified: 7 May 2011, 13:46:03 UTC

Read "Windows Internals" books, watch "Channel 9" videos om MSDN, read developer blogs and comments. Mark Russinovich and other guy from kernel team can enlighten you.
Here is a good starting point and another one too
If u dig few clicks deeper u may find this.
ID: 1104079 · Report as offensive
Profile ML1
Volunteer moderator
Volunteer tester

Send message
Joined: 25 Nov 01
Posts: 20289
Credit: 7,508,002
RAC: 20
United Kingdom
Message 1104081 - Posted: 7 May 2011, 13:43:51 UTC - in response to Message 1104079.  

Read "Windows Internals", watch "Channel 9" videos om MSDN, read developer blogs and comments. Mark Russinovich and other guy from kernel team can enlighten you.
Here is a good starting point


44 minutes 30 seconds video...

Is there a "Wikipedia" style succinct description that any programmer can read please?

I'll take a look the vid at some time. Multitasking on other things at the moment...

Have you checked out the O(1) scheduler?...

Happy crunchin',
Martin

See new freedom: Mageia Linux
Take a look for yourself: Linux Format
The Future is what We all make IT (GPLv3)
ID: 1104081 · Report as offensive
hbomber
Volunteer tester

Send message
Joined: 2 May 01
Posts: 437
Credit: 50,852,854
RAC: 0
Bulgaria
Message 1104087 - Posted: 7 May 2011, 13:54:23 UTC
Last modified: 7 May 2011, 13:57:01 UTC

Yes, its two paragraphs, also its too general.
I read information which only concerns my current task. Life is too short, information is too much. And, tbh, Linux scheduler is very deep down in the queue. Sorry for not being good companion.
My intention when participating this thread was to point out that things are neither so simple, nor so "dark", concerning Windows.
ID: 1104087 · Report as offensive
Profile HAL9000
Volunteer tester
Avatar

Send message
Joined: 11 Sep 99
Posts: 6534
Credit: 196,805,888
RAC: 57
United States
Message 1104127 - Posted: 7 May 2011, 15:23:07 UTC - in response to Message 1103962.  

I've been wondering how people have been racking up the millions on dual core and four core machines when I'm just chugging along with my multiple 16+ core systems...

I for one have a large number of idle machines on hand & 99.99999% of their time is spent processing S@H work. Depending on the workload of your 16 core machines & when they are allowed to run I would think they would do about 15,000 a day in RAC.
The use of optimized apps increases the efficiency by making use of the advanced functions in the processors.
If you want to go crazy then you put 4 dual processor video cards in a system & it cranks out several 10,000's worth of RAC a day. Some ever crack over 100,000. GPU computing while powerful seems to be "temperamental".
With 8 & 10 core CPU's having 80 logical processors is a fun idea & hopefully getting them all going full tilt can be done.
SETI@home classic workunits: 93,865 CPU time: 863,447 hours
Join the [url=http://tinyurl.com/8y46zvu]BP6/VP6 User Group[
ID: 1104127 · Report as offensive
-BeNt-
Avatar

Send message
Joined: 17 Oct 99
Posts: 1234
Credit: 10,116,112
RAC: 0
United States
Message 1104342 - Posted: 8 May 2011, 7:15:01 UTC - in response to Message 1104078.  

Thank you for ruining consequent thread with unnecessary Linux bloat. It is certainly not the way to convince Linux is better OS.
I promise to report your posts every time they go even slightly out of topic from now on.

Hardly. I was hoping you would offer your expertise to shed some light on the comparison of schedulers and explain how the Windows kernel scheduler is better or not and how the Windows Groups is the only way to go... And worth the extra programming effort.

I'm genuinely interested in how Windows does it's scheduling. However, detailed information on the web is scant. Is it all secret and 'proprietary'?

This issue gets all the more important as we move to ever more processor cores in systems.

Happy fast crunchin',
Martin



Talking about schedulers, in a thread.....talking about using more of a machines cores in a Windows environment......I mean off topic is fine with me ever so often, but you bring your linux spew into EVERY thread where someone has an issue with something running on a Windows machine, where I might add often times the issue they are having is not the fault of Windows, but either user, or user contributed software problems.

Speaking of which how did that turn out? I can't tell as it seems this has turned into yet another 'Linux is best / Windows sux' campaign.



Traveling through space at ~67,000mph!
ID: 1104342 · Report as offensive
Profile gcpeters
Avatar

Send message
Joined: 20 May 99
Posts: 67
Credit: 109,352,237
RAC: 1
United States
Message 1104762 - Posted: 9 May 2011, 21:59:31 UTC - in response to Message 1104342.  

At the moment, I have adjusted the config file to now read:

<ncpus>40</ncpus>

It was set to 80. I saw 80 running SETI tasks in Task Mangler. I also saw my cpu utilization drop down to ~37%. I thought this might have to do with using logical processors versus cores so I dropped it down to 40 (actual num of cores in this system...which btw has SMT enabled in BIOS...ergo the 80 logicals seen by the OS). Anyhoo, the system is now still showing 80 tasks running although BOINC shows from Read config file that "...use at most 40 cpus."

That all said, when can I expect BOINC to stop running 80 tasks and scale back down to 40? Also, when it does, will my cpu utilization begin to scale back upward? I would hope so...

BOINC seems slow to accept and implement changes to the config...
ID: 1104762 · Report as offensive
Claggy
Volunteer tester

Send message
Joined: 5 Jul 99
Posts: 4654
Credit: 47,537,079
RAC: 4
United Kingdom
Message 1104765 - Posted: 9 May 2011, 22:13:21 UTC - in response to Message 1104762.  
Last modified: 9 May 2011, 22:56:25 UTC

Did you just do a 'Read config file'?, did you try restarting Boinc?

Claggy
ID: 1104765 · Report as offensive
Profile gcpeters
Avatar

Send message
Joined: 20 May 99
Posts: 67
Credit: 109,352,237
RAC: 1
United States
Message 1104773 - Posted: 9 May 2011, 23:16:48 UTC - in response to Message 1104765.  

I wasn't aware BOINC needed to be restarted to accept config file changes. I guess I hoped it was dynamic after a config file read...which one would be led to believe...otherwise why read the config file :)
ID: 1104773 · Report as offensive
Claggy
Volunteer tester

Send message
Joined: 5 Jul 99
Posts: 4654
Credit: 47,537,079
RAC: 4
United Kingdom
Message 1104777 - Posted: 9 May 2011, 23:39:17 UTC - in response to Message 1104773.  
Last modified: 9 May 2011, 23:40:21 UTC

I wasn't aware BOINC needed to be restarted to accept config file changes. I guess I hoped it was dynamic after a config file read...which one would be led to believe...otherwise why read the config file :)

Have you got the following setting enabled?:

Leave tasks in memory while suspended? yes
Suspended tasks will consume swap space if 'yes'

If you have then 80 tasks will remain showing in Task Manager, 40 of them will be computing,
and 40 of them will sit idle awaiting to continue when a running task completes, (they will be taking up memory)

Now if you restart Boinc, only 40 tasks will show in Task Manager, the other 40 will show in Boinc Manager as waiting to run,
and will restart from their last checkpoint, (as opposed to being sat in memory waiting to run.)

Claggy
ID: 1104777 · Report as offensive
Profile gcpeters
Avatar

Send message
Joined: 20 May 99
Posts: 67
Credit: 109,352,237
RAC: 1
United States
Message 1104778 - Posted: 9 May 2011, 23:43:16 UTC - in response to Message 1104777.  
Last modified: 9 May 2011, 23:47:57 UTC

Mine is set to "no".

Changed my config file back to <ncpus>80</ncpus> and restarted BOINC. Now seeing all 80 tasks running in both BOINC Mangler and Task Mangler. Overall CPU usage has jumped up to ~ 75%. Now how to use up that final 25%...?
ID: 1104778 · Report as offensive
Claggy
Volunteer tester

Send message
Joined: 5 Jul 99
Posts: 4654
Credit: 47,537,079
RAC: 4
United Kingdom
Message 1104781 - Posted: 9 May 2011, 23:55:11 UTC - in response to Message 1104778.  
Last modified: 9 May 2011, 23:56:08 UTC

Mine is set to "no"

Is that with Web based Computing preferences? and in the same venue as your host is set too? are there any local preferences set on that host? (local preferences over-ride Web preferences)
(I haven't seen any startup messages for that host, so sometimes difficult to visualise how things may be set up)

Claggy
ID: 1104781 · Report as offensive
Profile BilBg
Volunteer tester
Avatar

Send message
Joined: 27 May 07
Posts: 3720
Credit: 9,385,827
RAC: 0
Bulgaria
Message 1105150 - Posted: 11 May 2011, 12:48:21 UTC - in response to Message 1104773.  

I wasn't aware BOINC needed to be restarted to accept config file changes. I guess I hoped it was dynamic after a config file read...which one would be led to believe...otherwise why read the config file :)


http://boinc.berkeley.edu/wiki/Client_configuration
http://www.boinc-wiki.info/Cc_config.xml
http://boincfaq.mundayweb.com/index.php?language=1&view=91

I copied the "Warning" from the last link to the first two links (so hopefully no more "I wasn't aware" will happen):
Warning: Any changes in the <log_flags> section will be used immediately after re-read of the config file. Yet a lot of changes in the <options> section will need a complete exit and restart of the BOINC client. They will not take if you just re-read the config file.

(I think the info in "BOINC FAQ Service" is free to use)


 


- ALF - "Find out what you don't do well ..... then don't do it!" :)
 
ID: 1105150 · Report as offensive
Profile BilBg
Volunteer tester
Avatar

Send message
Joined: 27 May 07
Posts: 3720
Credit: 9,385,827
RAC: 0
Bulgaria
Message 1105152 - Posted: 11 May 2011, 13:14:38 UTC - in response to Message 1104778.  
Last modified: 11 May 2011, 13:26:45 UTC

Changed my config file back to <ncpus>80</ncpus> and restarted BOINC. Now seeing all 80 tasks running in both BOINC Mangler and Task Mangler. Overall CPU usage has jumped up to ~ 75%. Now how to use up that final 25%...?


It is supposed to use all the available CPU time.

1) In Windows Task Manager - do you see every of the 80 SETI tasks using 1.25% CPU (1.25 * 80 = 100%)?
Are there other processes using much CPU?

2) In BOINC Manager -> Tasks tab - are all the 80 SETI tasks show "Running" (or e.g. "Waiting for memory", "Waiting to run", etc...)?
Is the percentage counting up in the "Progress" column for all the 80 SETI tasks?


Restart BOINC and post the first 40-50 lines from the Messages tab
(Click, Shift-Click, use [Copy selected messages] button at the left)

These messages will help us see many settings which are in fact in use (some set by you, some defaults) - will save our and your time asking for every setting.


 


- ALF - "Find out what you don't do well ..... then don't do it!" :)
 
ID: 1105152 · Report as offensive
Dave

Send message
Joined: 29 Mar 02
Posts: 778
Credit: 25,001,396
RAC: 0
United Kingdom
Message 1106435 - Posted: 15 May 2011, 11:20:39 UTC

So may processes sounds like more overhead than it's worth.
ID: 1106435 · Report as offensive
hbomber
Volunteer tester

Send message
Joined: 2 May 01
Posts: 437
Credit: 50,852,854
RAC: 0
Bulgaria
Message 1106439 - Posted: 15 May 2011, 11:40:29 UTC
Last modified: 15 May 2011, 11:47:15 UTC

160 processes with 3 threads each, probably two of them in wait state, are not generating much overhead. More noticeable problem is when they initialize(OS initialization phase and later process initializing its internal data and structures), which happens at same time. Another bottleneck can be slow memory, bcs of the concurrent access, already in their main working state(so count it as hardware limitation).
ID: 1106439 · Report as offensive
Previous · 1 . . . 4 · 5 · 6 · 7 · 8 · Next

Message boards : Number crunching : Multi core greater than 80 core


 
©2024 University of California
 
SETI@home and Astropulse are funded by grants from the National Science Foundation, NASA, and donations from SETI@home volunteers. AstroPulse is funded in part by the NSF through grant AST-0307956.