If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. |
|
|
|
Thread Tools | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and'start fixing real problems'
Linus Torvalds' comments came from this article: https://is.gd/6zpZRL
His comments came in a mailing list (via Phoronix) discussing an article suggesting AVX-512 might not be part of Intel's upcoming Alder Lake architecture. If that comes to pass, it will be just fine by Torvalds. "I hope AVX512 dies a painful death, and that Intel starts fixing real problems instead of trying to create magic instructions to then create benchmarks that they can look good on. I hope Intel gets back to basics: gets their process working again, and concentrate more on regular code that isn't HPC or some other pointless special case," Torvalds said. Intel introduced AVX-512 in 2013, initially as part of its Xeon Phi x200 and Skylake-X processor lines. It has also found its way into more current CPU architectures, including Ice Lake. The instruction set is designed to bolster performance in various types of workloads, such as scientific simulations, financial analytics, artificial intelligence, data compression, and other tasks that can benefit from more robust floating point operations. Nevertheless, Torvalds views AVX-512 as an example of "special-case garbage," noting that in regards to floating point performance, "absolutely nobody cares outside of benchmarks." "I absolutely detest FP benchmarks, and I realize other people care deeply. I just think AVX-512 is exactly the wrong thing to do. It's a pet peeve of mine. It's a prime example of something Intel has done wrong, partly by just increasing the fragmentation of the market," Torvalds said. I think he's absolutely right, and previously we didn't see how much Intel was wasting its time making these AVX instructions because it's gaping security flaws were not yet known. We just assumed that the more sophisticated these floating-point instructions got, the more power they must draw naturally. But previous generations of FP instructions stayed well within the power envelope of the processor, whereas these AVX instructions have been known to go well outside the standard power envelope. Yousuf Khan |
#2
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
Yousuf Khan wrote:
Linus Torvalds' comments came from this article: https://is.gd/6zpZRL Full URL: https://www.pcgamer.com/linux-founde...al-problems%2F Linus is known for publishing his tirades on Windows, and even on Linux variants. He lambasts everyone. Tweaking hardware to look good in benchmarks is news to you? Video chip makers have been doing this forever, making their hardware or firmware look better in particular benchmarks (sometimes their own benchmarks tweaked for their hardware) but for which the benchmarks have no practical implementation illustrating actual performance in real use. AVX wasn't just about improving FP instructions. The number of cores available back then was maybe up to 4 allowing concurrent thread processing. With more cores to parallelize the computing, AVX becomes less necessary. The latest CPUs (although far outside the consumer price range) have 64 cores, maybe more. Sorry, but bitching in hindsight is the easy way to look superior. I don't see Linux bitching back *then* when AVX showed up. His forward-looking crystal ball was just as cloudy as everyone else's. So, how many cores were in your home computer back in 2013 when AVX came out? AVX isn't just about upping the bit-width of FP calculations, but also about parallelization. How many desktops nowadays have any apps on them that can use all 4 cores? Not all CPUs are waiting to do something for end users. Some are involved in highly complex computing, like animated computer graphics. You think Zootopia was composed on a home computer? So, you think Intel (or AMD) are going to tool up for a completely separate production line for consumer vs high-graphics design platforms? There is an economy in production by reusing existing manufacturing processes. Do consumer platforms utilize AVX? Rarely. Why didn't Linus bitch when Intel added Streaming SIMD Extensions (SSE)? How about all those non-gaming users that don't care even about the old SSE extensions? Oh my God, the CPU has something they don't need. I suppose next Linus will bitch about increased parallelization in Mozilla's Firefox. The next engine, Servo, takes advantage of the memory safety and concurrency features of the Rust programming language. Servo will use parallelism by using more cores for the rendering engine, layout, HTML parsing, image processing, decoding, and other tasks that can be isolated (into separate processes or threads to run on more cores). Servo also makes further use of GPU-assisted acceleration, so code running on a different processor. Would the GPU be needed if there more core CPUs (real or multi-core) to parallelize the FP instructions? I think GPU-assisted acceleration in web browsers started back in 2010, but was just for web browsers. I remember some other apps used the GPU for faster FP processing, but they seemed few and far between. More video games are using AVX (AVX 2 more than AVX 512) since it is part of the DirectX12 API. LOTS of users play video games on their home computers, so AVX is really not that rare for use on low-end computing platforms. AVX used to be shunned by game devs due to complexity in coding. Scalar, non-AVX : void interpolate(vectorvectorint& mat) { for(int i=2; imat.size()-1; i=i+2) for(int j=0; jmat[0].size(); j++) { mat[i][j] = mat[i-1][j] + 0.5f * (mat[i+1][j] - mat[i-1][j]); } } Using AVX: void interpolate_avx(vectorvectorint& mat) { for(int i=2; imat.size()-1; i=i+2) for(int j=0; jmat[0].size(); j=j+8) { _mm256_storeu_si256((__m256i *)&mat[i][j], _mm256_cvtps_epi32(_mm256_add_ps(_mm256_mul_ps(_mm 256_sub_ps(_mm256_cvtepi32_ps(_mm256_loadu_si256(( __m256i *)&mat[i+1][j])), _mm256_cvtepi32_ps(_mm256_loadu_si256((__m256i *)&mat[i-1][j]))), _mm256_set1_ps(0.5f)), _mm256_cvtepi32_ps(_mm256_loadu_si256((__m256i *)&mat[i-1][j]))))); } } However, when mandated to programmers to code a game for maximum performance, the AVX code runs 6.5 times faster! Simple coding with slower performance, or complicated coding with faster performance. The tradeoff is more cost in coding work, debugging, and optimizing hence more time to achieve faster performance. Considering have video games have upped the number of moving objects, physics modeling, and moving texture change, some video games have insane requirements compared to games dated over a decade ago. Video games are real use of AVX. It's not just making benchmarks look better. Guess Linus doesn't have bleeding edge hosts (in technology and to his pocket) on which to run the most demanding video games. Is Linus even a gamer? Oh wait, yeah, not that big a selection for Linux. |
#3
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
On 15/07/2020 19:42, VanguardLH wrote:
Is Linus even a gamer? Oh wait, yeah, not that big a selection for Linux. He isn't anyway. -- Brian Gregory (in England). |
#4
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions'and 'start fixing real problems'
On 7/15/2020 2:42 PM, VanguardLH wrote:
Not all CPUs are waiting to do something for end users. Some are involved in highly complex computing, like animated computer graphics. You think Zootopia was composed on a home computer? So, you think Intel (or AMD) are going to tool up for a completely separate production line for consumer vs high-graphics design platforms? There is an economy in production by reusing existing manufacturing processes. Do consumer platforms utilize AVX? Rarely. Why didn't Linus bitch when Intel added Streaming SIMD Extensions (SSE)? How about all those non-gaming users that don't care even about the old SSE extensions? Oh my God, the CPU has something they don't need. Well, no, the SSE extensions were a big improvement over the old stack-based FPU model. Directly accessible FP registers rather than pushing and popping indirectly off of a stack. Even AMD's 3DNow achieved this, requiring even less changes to the hardware (it just fixed the existing FPU stack model), although AMD did not yet have sufficient marketshare to push it widely onto the market. I think the point Linus is making is that AVX takes FPU's to a state that no one asked for. When the first version of AVX came out, and no one used it, well okay just a mistake, then the second version came out, hoping that it would correct the deficiencies of the first one, still kind of understandable. When even that one wasn't used, and now we're at like version 3 or 4, none of which are being used, then that's obviously gone too far. Yousuf Khan |
#5
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
Yousuf Khan wrote:
On 7/15/2020 2:42 PM, VanguardLH wrote: Not all CPUs are waiting to do something for end users. Some are involved in highly complex computing, like animated computer graphics. You think Zootopia was composed on a home computer? So, you think Intel (or AMD) are going to tool up for a completely separate production line for consumer vs high-graphics design platforms? There is an economy in production by reusing existing manufacturing processes. Do consumer platforms utilize AVX? Rarely. Why didn't Linus bitch when Intel added Streaming SIMD Extensions (SSE)? How about all those non-gaming users that don't care even about the old SSE extensions? Oh my God, the CPU has something they don't need. Well, no, the SSE extensions were a big improvement over the old stack-based FPU model. Directly accessible FP registers rather than pushing and popping indirectly off of a stack. Even AMD's 3DNow achieved this, requiring even less changes to the hardware (it just fixed the existing FPU stack model), although AMD did not yet have sufficient marketshare to push it widely onto the market. I think the point Linus is making is that AVX takes FPU's to a state that no one asked for. When the first version of AVX came out, and no one used it, well okay just a mistake, then the second version came out, hoping that it would correct the deficiencies of the first one, still kind of understandable. When even that one wasn't used, and now we're at like version 3 or 4, none of which are being used, then that's obviously gone too far. Yousuf Khan Already pointed out: your "none of which are being used" is wrong. It is being used. Video games use it, and those are not rare on Windows platforms. Any game using DirectX 12 are utilizing AVX2. Scientific, statistical, financial, encryption, and other programs can use it. Any program using .NET Framework can use AVX. The latest versions of Prime95 are optimized to use AVX. While it is used to stress test, that was not its original or current intent which was to discover prime numbers. Is prime hunting something that home users do? Of course not, but it illustrates AVX *is* used. https://www.tomshardware.com/reviews...de,5461-2.html "By default, Prime95 automatically selects the newest instruction set extension, such as AVX, AVX2, or even AVX-512." Your claim AVX is not used is false. To test, go into the BIOS settings and change the AVX offset, and then monitor the core frequencies, like with MSI's Afterburner. Surprise, a lot of video games use AVX. You'll see the core frequencies go down relative to the AVX offset when running an AVX-enabled program. I don't play many new games (I still wish the Thief series keep evolving since stealth is so poorly done in newer games), but have read SofTR, Darksiders 3, Monster Hunter Word, AC: Odyssey, and Overwatch use AVX. Overclockers trying to maintain the highest but stable clock rates whine when core frequencies drop due to AVX, and have to change the AVX offset to up the freqs. https://www.google.com/search?q=over...20avx%20offset If the games weren't using AVX, overclockers wouldn't be stymied over the reduction in core freqs (and possible instability from vcore reduction). https://www.youtube.com/watch?v=BXBSVT9lpGw Notice the AVX mode has higher frame rates. Also, it seems the right side (for AVX) seems sharper overall. Timemark 2:23 starts the charts. Later the author shows AVX doesn't improve performance in all games that implement AVX. Sometimes AVX helps, sometimes not (but it's not worse). I'm not into game programming, so I'll let someone else expert in that note why AVX doesn't do better than SSE. |
#6
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
On 2020-07-15 11:42, VanguardLH wrote:
Is Linus even a gamer? Oh wait, yeah, not that big a selection for Linux. Linux is not tied with Windows for gaming. Take a gander at: Fedora 31 | Features, Gaming, and New Daily Driver https://www.youtube.com/watch?v=1P8oBlOTBho |
#7
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions'and 'start fixing real problems'
On 2020-07-16 11:35, T wrote:
isÂ*not "is now" Stinking typos |
#8
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
T wrote:
VanguardLH wrote: Is Linus even a gamer? Oh wait, yeah, not that big a selection for Linux. Linux is not tied with Windows for gaming. Take a gander at: Fedora 31 | Features, Gaming, and New Daily Driver https://www.youtube.com/watch?v=1P8oBlOTBho You didn't provide a timemark for the related content, and I wasn't going to watch all of the 22 minute video, so I moved the slider to skim through it. The author started talking about Steam on Linux which could now detect the native OS platform to know which game titles to present. Steam represents about 78% of the marketshare for computer games. I saw something about them using a compatibility shim to run Windows games on Linux platforms eliminating the need to run Steam and the Windows games inside of WINE. Wonder how the benchmarks reflect the performance of a Windows game running inside of WINE versus running the Windows game atop Steam's shim. https://itsfoss.com/steam-play/ Oh, so Steam Play simply provides a fork of WINE as its shim between the native OS platform and the Windows-only game. The Windows games will likely be impacted the same whether ran inside of WINE or Steam's variant of WINE. I didn't even bother to address running anything Windows inside of WINE or via any other emulation layer, like VMWare Player for Linux running Windows as a guest OS and then running a Windows game inside of that virtual machine. That something is doable doesn't mean it should be. That still means the games were *not* developed for the Linux platform. They were written for the Windows platform. Guess I should've qualified my statement by saying: "Oh wait, yeah, not that big a selection of native Linux games. " Do hardcore gamers even bother with WINE? Conversely, everything Linux can be played on Windows, too, so the user could use a Windows platform to play native Windows games and emulated Linux games. Is there much draw for that scenario? You can even play Android apps on Windows by using a shim aka emulator, like Bluestacks. There's native-on-native, and then there are less-than-ideal workarounds. |
#9
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions'and 'start fixing real problems'
VanguardLH wrote:
You didn't provide a timemark for the related content, and I wasn't going to watch all of the 22 minute video, so I moved the slider to skim through it. The author started talking about Steam on Linux which could now detect the native OS platform to know which game titles to present. Steam represents about 78% of the marketshare for computer games. I saw something about them using a compatibility shim to run Windows games on Linux platforms eliminating the need to run Steam and the Windows games inside of WINE. Wonder how the benchmarks reflect the performance of a Windows game running inside of WINE versus running the Windows game atop Steam's shim. No all Steam games on Linux are Windows games running in WINE, many are truly ported. I've got the Borderland games and they are ports not running in WINE. Proton and WINE just extend selection for old games avoiding the need to port. -- Take care, Jonathan ------------------- LITTLE WORKS STUDIO http://www.LittleWorksStudio.com |
#10
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
"Jonathan N. Little" wrote:
VanguardLH wrote: The author started talking about Steam on Linux which could now detect the native OS platform to know which game titles to present. Steam represents about 78% of the marketshare for computer games. I saw something about them using a compatibility shim to run Windows games on Linux platforms eliminating the need to run Steam and the Windows games inside of WINE. No all Steam games on Linux are Windows games running in WINE, many are truly ported. I've got the Borderland games and they are ports not running in WINE. Proton and WINE just extend selection for old games avoiding the need to port. And does that somehow lopside the bias of game count to make native Linux games far exceed those native games available on Windows? Of course not. A game that had been ported to be a native Linux app is obviously no longer a Windows app. A ported Windows game becomes a native Linux game. The count of Linux games, whether native or ported to make native, are still meager compared to the count of native games on Windows. Steam Play (Steam for Linux) detects the platform for the game probably via a manifest for the game specifying its native platform. If it's a native Linux game, it just loads it in Linux. If a Windows game, it uses its WINE variant (aka Proton) to run the Windows game in that emulator running atop Linux. https://www.extremetech.com/gaming/2...ows-only-games The confirmed list of Windows-only games that are compatible atop Steam's Proton variant of is small. That's just the ones that Steam has confirmed are compatible. https://emulation.gametechwiki.com/index.php/Proton has a hyperlink pointing to a list of app manifests/mappings for 100+ compatible Windows games. There's also a link to user-reported game compatibility. Proton converts the DX 10/11 calls to Vulkan to help keep game performance similar to the Windows game when ran native on Windows. That is dependent on the available of proprietary Linux drivers for video hardware, the efficiency in coding the Linux video driver, and compatibility of the Linux driver provided by the video maker to run on other Linux variants (most don't list just Linux but some variant as supported). Regardless of the workarounds, they still don't alter which are native Linux games and which are native Windows games, and the huge disparity in counts between them. As noted, you can run Linux stuff on Windows, but that doesn't magically mutate them into native Windows apps. Linux marketshare floats around 2%, so obviously the game authors are going to target the market that has the biggest ROI. That's not Linux. I'm not a Windows proselytizer or Linux defender. I believe in using the platform that best suits the task. Sorry, I still don't see Linux as the best choice for a gaming platform. |
#11
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions'and 'start fixing real problems'
On 2020-07-16 14:01, VanguardLH wrote:
T wrote: VanguardLH wrote: Is Linus even a gamer? Oh wait, yeah, not that big a selection for Linux. Linux is not tied with Windows for gaming. Take a gander at: Fedora 31 | Features, Gaming, and New Daily Driver https://www.youtube.com/watch?v=1P8oBlOTBho You didn't provide a timemark for the related content, and I wasn't going to watch all of the 22 minute video, so I moved the slider to skim through it. The author started talking about Steam on Linux which could now detect the native OS platform to know which game titles to present. Steam represents about 78% of the marketshare for computer games. I saw something about them using a compatibility shim to run Windows games on Linux platforms eliminating the need to run Steam and the Windows games inside of WINE. Wonder how the benchmarks reflect the performance of a Windows game running inside of WINE versus running the Windows game atop Steam's shim. https://itsfoss.com/steam-play/ Oh, so Steam Play simply provides a fork of WINE as its shim between the native OS platform and the Windows-only game. The Windows games will likely be impacted the same whether ran inside of WINE or Steam's variant of WINE. I didn't even bother to address running anything Windows inside of WINE or via any other emulation layer, like VMWare Player for Linux running Windows as a guest OS and then running a Windows game inside of that virtual machine. That something is doable doesn't mean it should be. That still means the games were *not* developed for the Linux platform. They were written for the Windows platform. Guess I should've qualified my statement by saying: "Oh wait, yeah, not that big a selection of native Linux games." Do hardcore gamers even bother with WINE? Conversely, everything Linux can be played on Windows, too, so the user could use a Windows platform to play native Windows games and emulated Linux games. Is there much draw for that scenario? You can even play Android apps on Windows by using a shim aka emulator, like Bluestacks. There's native-on-native, and then there are less-than-ideal workarounds. Titus starts in with Lutris at about 7:25 |
#12
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
T wrote:
On 2020-07-16 14:01, VanguardLH wrote: T wrote: VanguardLH wrote: Is Linus even a gamer? Oh wait, yeah, not that big a selection for Linux. Linux is not tied with Windows for gaming. Take a gander at: Fedora 31 | Features, Gaming, and New Daily Driver https://www.youtube.com/watch?v=1P8oBlOTBho You didn't provide a timemark for the related content, and I wasn't going to watch all of the 22 minute video, so I moved the slider to skim through it. The author started talking about Steam on Linux which could now detect the native OS platform to know which game titles to present. Steam represents about 78% of the marketshare for computer games. I saw something about them using a compatibility shim to run Windows games on Linux platforms eliminating the need to run Steam and the Windows games inside of WINE. Wonder how the benchmarks reflect the performance of a Windows game running inside of WINE versus running the Windows game atop Steam's shim. https://itsfoss.com/steam-play/ Oh, so Steam Play simply provides a fork of WINE as its shim between the native OS platform and the Windows-only game. The Windows games will likely be impacted the same whether ran inside of WINE or Steam's variant of WINE. I didn't even bother to address running anything Windows inside of WINE or via any other emulation layer, like VMWare Player for Linux running Windows as a guest OS and then running a Windows game inside of that virtual machine. That something is doable doesn't mean it should be. That still means the games were *not* developed for the Linux platform. They were written for the Windows platform. Guess I should've qualified my statement by saying: "Oh wait, yeah, not that big a selection of native Linux games." Do hardcore gamers even bother with WINE? Conversely, everything Linux can be played on Windows, too, so the user could use a Windows platform to play native Windows games and emulated Linux games. Is there much draw for that scenario? You can even play Android apps on Windows by using a shim aka emulator, like Bluestacks. There's native-on-native, and then there are less-than-ideal workarounds. Titus starts in with Lutris at about 7:25 He first shows installing Lutris (Open Gaming Platform) before installing Steam Play. Is Lutris even needed to use Steam's dispatcher to decide if a game's manifest says it is Windows-only to then run it under Steam's Proton variant of WINE? Isn't Lutris a Linux game library manager and launcher, and perhaps across multiple sources (Steam, battle.net, GOG)? The video author says Lutris has no documentation. Really? Learning is solely by trial-and-error, or pleading for info in a user community? Before all that, he installed rpmFusion to get all the libs that Redhat doesn't include on which Lutris and Steam Play might be dependent. Install this, a must. Maybe install that. Then install Steam Play. I take it Lutris and Steam Play won't grab, download, and install any libs they are dependent upon. Seems this could be further streamlined for a bigger lure to users to leave Windows. Maybe the chained installs are needed just for Fedora. |
#13
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions'and 'start fixing real problems'
On 2020-07-16 1:35 p.m., T wrote:
On 2020-07-15 11:42, VanguardLH wrote: Is Linus even a gamer?Â* Oh wait, yeah, not that big a selection for Linux. Linux is not tied with Windows for gaming.Â* Take a gander at: Fedora 31 | Features, Gaming, and New Daily Driver https://www.youtube.com/watch?v=1P8oBlOTBho You make joke, Yes? :-) Rene |
#14
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions' and 'start fixing real problems'
Rene Lamontagne wrote:
On 2020-07-16 1:35 p.m., T wrote: On 2020-07-15 11:42, VanguardLH wrote: Is Linus even a gamer? Oh wait, yeah, not that big a selection for Linux. Linux is not tied with Windows for gaming. Take a gander at: Fedora 31 | Features, Gaming, and New Daily Driver https://www.youtube.com/watch?v=1P8oBlOTBho You make joke, Yes? :-) Rene Are we playing "Sodoku" yet ? Paul |
#15
|
|||
|
|||
Linux founder tells Intel to stop inventing 'magic instructions'and 'start fixing real problems'
On 2020-07-16 6:08 p.m., Paul wrote:
Rene Lamontagne wrote: On 2020-07-16 1:35 p.m., T wrote: On 2020-07-15 11:42, VanguardLH wrote: Is Linus even a gamer?Â* Oh wait, yeah, not that big a selection for Linux. Linux is not tied with Windows for gaming.Â* Take a gander at: Fedora 31 | Features, Gaming, and New Daily Driver https://www.youtube.com/watch?v=1P8oBlOTBho You make joke, Yes?Â* :-) Rene Are we playing "Sodoku" yet ? Â*Â* Paul I don't know how to play 'Sodoku' Too old to start now. :-) Rene |
|
Thread Tools | |
Display Modes | Rate This Thread |
|
|