formulav8
Diamond Member
- Sep 18, 2000
- 7,004
- 522
- 126
I hope you're not a programmer.This is very simple, a program should not act diferently if it has 2, 4 or 256 cores, it is as simple as that
Wait what why? There is no free thread-lunch, sorry, they have overhead and that overhead grows.This is very simple, a program should not act diferently if it has 2, 4 or 256 cores, it is as simple as that, a modern MT code will scale properly, and i think you will have a hard time finding the "first check how many cores you have at runtime" on any programing guide. F1 2016 is using old style programing if it needs to know how many cores it has avalible. /period
You know what? People who are programming games, for iOS, to which I have shown your post, are laughing their asses off.This is very simple, a program should not act diferently if it has 2, 4 or 256 cores, it is as simple as that, a modern MT code will scale properly, and i think you will have a hard time finding the "first check how many cores you have at runtime" on any programing guide. F1 2016 is using old style programing if it needs to know how many cores it has avalible. /period
As a programmer myself, I can tell you that if you have a task that can be split into an arbitrary number of threads, it's pretty important to know how many threads will yield the best performance. That will of course vary depending on the CPU. I'm not sure what sort of "programming guides" you read, but it's not hard to find discussions among programmers about this.This is very simple, a program should not act diferently if it has 2, 4 or 256 cores, it is as simple as that, a modern MT code will scale properly, and i think you will have a hard time finding the "first check how many cores you have at runtime" on any programing guide. F1 2016 is using old style programing if it needs to know how many cores it has avalible. /period
When I programmed, I did not care to keep track of the amount of threads and let the OS do it. However, the program often pegged one core and became sluggish at times. If I was smart, I'd still like to know how many threads a machine had and attempt to allocate or divide tasks in a way that one core wouldn't take the brunt of the workload.For many threaded tasks in games, they don't care how many cores there are. They spawn a thread and the OS scheduler may stack it with another large thread, or it may not.
But for easily parallel tasks like physics, yeah those are things that they need to be aware of the thread count to spawn as many as there are cores or maybe one less. And in the case of Ryzen, it may be better to have main threads on one CCX and dumb parallel tasks on the other, as one example. But no, you don't just spawn 256 threads for one task and let the scheduler handle those.
All I can infer from your statement is that you have zero clues as to what AVX is and how it is used by applications.Its easier than getting rid of the main thread, so yes.
This is wrong, and you've repeated this misinformation multiple times across multiple pages.Shivansps said:No, i got it right, if the game needs to identify anything means its not using the new model of "just create threads and forget about them", creating threads and letting the O.S. scheduler do its job, thats the new and current model. If you do that its the same if is 4, 8, 16 or 128 cores, or if it runs on Window,s Linux, Android or console, your code should aways run right, as long you dont run intro main thread bottleneck. If you need to idenfity CPU then you are doing it the old way.
The games does not need to read ANYTHING AT ALL. Just create the threads you need and keep on going, is the O.S. job to do load balancing and thread affinity.
If it needs to read core count thats because it runs on a outdated programing model.
This is very simple, a program should not act diferently if it has 2, 4 or 256 cores, it is as simple as that, a modern MT code will scale properly, and i think you will have a hard time finding the "first check how many cores you have at runtime" on any programing guide. F1 2016 is using old style programing if it needs to know how many cores it has avalible. /period
The dozens of threads that an application spawns are primarily threads to manage I/O operations (e.g., file access, listening for events from inputs devices, network access, sound, etc.). These are spun off into their own threads so that the main thread doesn't block waiting for I/O. It doesn't really matter how many of these threads there are (within reason) because they spend most of their time waiting, and the OS can schedule other threads to run in the meantime.Shivansps said:If you have any doubt open the resource manager and take a closer look at the number of threads a game starts howdays.
This.Nobody is expecting games to implement user mode scheduling, the potential 3-7% performance improvement is simply not worth it.
There is a difference between a lack of optimisation and a bug, it is pretty big stretch to claim that the windows scheduler is buggy due to the missing CCX optimisations. Hopefully they will add the optimisations in the future
AMD made their choice with the CCX typology, it is a compromise - I doubt the performance penalty comes as a surprise to AMD.
https://videocardz.com/67342/amd-ryzen-5-to-launch-on-april-11thAMD announces Ryzen series 5 with six and four-core processors available April 11
http://www.guru3d.com/news-story/amd-announces-ryzen-series-5-with-six-and-four-core-processors-available-april-11.html
EDIT: article was taken down.
Screenshot:
![]()
Gonna be interresting what HBM brings to the table .. may be first real viable gaming APU around..Most important thing to see will be how far they go beyond their turbo frequency. I'm now more interested in zen apu as they won't have to deal with ccx and by that time foundry's capability should improve.
I fear that may get a bit annoying - AMD clearly now have the technology to produce a really good single chip gaming solution, whether they've got the spare R&D for a niche thing like that is another matter.Gonna be interresting what HBM brings to the table .. may be first real viable gaming APU around..
I hear that but I am also thinking that there will be common ground between those and the next xbox/ps skus, there may be a "shared" R&D budget there.I fear that may get a bit annoying - AMD clearly now have the technology to produce a really good single chip gaming solution, whether they've got the spare R&D for a niche thing like that is another matter.
they are all unlocked so I say it's perfectly OK as it is. OCers will choose the cheaper one everybody else the 1600x. No need for a 3rd sku.They had room for another 6 cores SKU between the 1600 and 1600x but the naming scheme doesn't allow it.
Not that many OC and those that do can buy cheaper SKUs to do it.they are all unlocked so I say it's perfectly OK as it is. OCers will choose the cheaper one everybody else the 1600x. No need for a 3rd sku.
The quads are probably the worst binning chips that can't reach higher clocks (and not necessarily dies with broken cores).
HAHAHAHAHAHAThis is very simple, a program should not act diferently if it has 2, 4 or 256 cores, it is as simple as that, a modern MT code will scale properly