• Happy holidays, folks! Thanks to each and every one of you for being part of the Tom's Hardware community!

Full Multi-core Power May Require Windows Rework

Status
Not open for further replies.
Forget the Windows Kernel; I would like to see the Linux kernel get more and more parallel! I feel sorry for kernel developers as they begin to parallelize their code... their life is going to get increasingly complex.
 
http://www.barrelfish.org/

Microsoft is already working on it, and it's a multikernel OS, basically lots of small kernels that run collaboratively on different hardware nodes (like NUMA nodes) instead of the classical approach of one kernel running on multiple NUMA nodes at once.
 
Are there realy eight or twelve tasks in the home OS that all need attention at the same time at 3 GHz? I don't think so! Application and game developers will need to find ways to use the CPU's full potential, not kernel developers.
 
The problem is that most modern language dont cope well with parallel paradigms. You need the OS support for it, like threads. We need language built parallel iterators and syncing. In short: new program flow structure that support parallelism.
 
Anybody who ever has attempted multithreaded code in Windows knows that stability goes out the window the minute you start adding more threads that actually require synchronization. It's pretty terrible TBH. Not to mention, the performance gains aren't always what you'd hope for either.
 
[citation][nom]multithreaded_doT_net_dev[/nom]Anybody who ever has attempted multithreaded code in Windows knows that stability goes out the window the minute you start adding more threads that actually require synchronization. It's pretty terrible TBH. Not to mention, the performance gains aren't always what you'd hope for either.[/citation]

My advice, is misuse the message pump to stabilize your application. Create hidden windows and send windows messages between threads. It isn't pretty, but it always works.
 
where is those long promised graphene super speedy cpu's we are all waiting for not these crappy multitreads @1.2 Ghz? He-he gm:)
 
We will continue to wait for those advert programs to load holding up internet sites no matter how many cores we have
 
that's right. If you using office doc program. you may not gain much benefit for that. But if you a 3d artist. then you can use the HUGH benefit for more core as they can make. Now i am using i7 which is 8 threat. when i render my model. i got 8 node to render a the same time. and i only in one computer. eventually it is faster than i running 4 core 2 duo desktop to render in network farm. the time they send message to each desktop then back to the main desktop. it took a while.
By the way. I understand it's hard for windows system to make better from the improvement of original windows every revolution. Maybe it's more easy to start from sketch to write a new operation system...Maybe call "Doors 10" 😀
 
Mainframes struggle enough with this but have the benefit of decades of development in this area unlike little old windows. We could have had this long ago had dual socket platforms had seen more wide spread use in the office and home but here we are. Shame even the BBC had dual cpu micros back when people were still using 8080s and Z80s before the Amiga 500 came out. The best way they could do this is look to the supercomputing sector and license code from other developers.
 
[citation][nom]lcdvt[/nom]Shouldn't Kernel developers be busy, with using no CPU ticks what so ever![/citation]
You mean CUDA/Stream? If so, realize that most of the normal x86 ops used by the CPU will not run very well on GPU. What GPUs really rock at is crunching raw numbers.
 
[citation][nom]Cryogenic[/nom]http://www.barrelfish.org/ Microsoft is already working on it, and it's a multikernel OS, basically lots of small kernels that run collaboratively on different hardware nodes (like NUMA nodes) instead of the classical approach of one kernel running on multiple NUMA nodes at once.[/citation]
interesting i wish they succed
 
[citation][nom]Cryogenic[/nom]http://www.barrelfish.org/ Microsoft is already working on it, and it's a multikernel OS, basically lots of small kernels that run collaboratively on different hardware nodes (like NUMA nodes) instead of the classical approach of one kernel running on multiple NUMA nodes at once.[/citation]
Why is it that OS design isn't focusing more so on utilizing GPU parallel processing (as seen w/ NVIDIA's CUDA) since there already are 16-800 cores available w/NVIDIA and ATI's products)?
 
This gets solved in Visual Studio 2012. Yes, the hardware came first and the software must be made to take advantage of it. Nothing to see here, move along.
 


Because 90% of people who use PC's don't have discreet GPU's in their machines.
 
[citation][nom]regulas[/nom]"but do we have the software chops to handle all that power?" Yeah, it's called Linux.[/citation]
that`s why benchmarks made cross platform between linux and windows on certain aplications look alike ? Linux is great for some stuff but still try to keep the enthusiasm for yourself.
 
The problem, Probert believes, is that software still isn't being written to best take advantage of all the hardware that'd we've been running in our systems for years now.

Yes! I totally agree with him. Haven't you guys had a question "Does my hardware sucks that much or just software developers are old style?".

I totally agree that hardware isn't a problem, software is.
 
[citation][nom]lcdvt[/nom]My advice, is misuse the message pump to stabilize your application. Create hidden windows and send windows messages between threads. It isn't pretty, but it always works.[/citation]

That's horrible advice. Good multithreaded apps can be written. I have coded some very stable multithreaded apps. It just requires good architecture and recognizing what pieces should be multithreaded. C# 4.0 makes parallelism even easier. Although if you were relying on using the built in .NET ThreadPool then you probably shouldn't have tried multithreading.
 
Status
Not open for further replies.

TRENDING THREADS