Message boards :
Number crunching :
Why need 5 different stock AMD OpenCL GPU applications?
Message board moderation
Author | Message |
---|---|
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
Since tonight I run stock Seti applications on my AMD HD7870, Windows 7 x64, Crimson 15.12 drivers. Where BOINC for the first 6 tasks downloaded the v8.12 OpenCL ATIAPU SoG (opencl_atiapu_SoG) application, it's since gone and downloaded also the OpenCL ATI SAH (opencl_ati_cat132), OpenCL ATI5 SAH (opencl_ati5_cat132), OpenCL ATI5 SoG (opencl_ati5_SoG_cat132) and OpenCL ATIAPU SAH (opencl_atiapu_sah) applications. I don't really see the need why it should do so. It's running just normal MBs and Guppi VLARs, I guess just like everyone else. The downside of this is of course that it now takes at least 5 times as long before my computer is being seen as trustworthy, because it now needs to do 5 times the '10 task minimum without error' validation rounds. Seeing the applications page, there's probably two more applications I see that can be sent my way. |
petri33 Send message Joined: 6 Jun 02 Posts: 1668 Credit: 623,086,772 RAC: 156 |
Well, There is a haystack of different needles and straws. To attack them best in the long run .... To overcome Heisenbergs: "You can't always get what you want / but if you try sometimes you just might find / you get what you need." -- Rolling Stones |
HAL9000 Send message Joined: 11 Sep 99 Posts: 6534 Credit: 196,805,888 RAC: 57 |
Since tonight I run stock Seti applications on my AMD HD7870, Windows 7 x64, Crimson 15.12 drivers. If you think that is bad. We now have 12 Android apps. After 4 or 5 months of running nearly 24/7 I still did not have the required "completed" tasks for each app. I really think that being able to enable/disable apps by their plan class should be a default BOINC option. SETI@home classic workunits: 93,865 CPU time: 863,447 hours Join the [url=http://tinyurl.com/8y46zvu]BP6/VP6 User Group[ |
Admiral Gloval Send message Joined: 31 Mar 13 Posts: 20152 Credit: 5,308,449 RAC: 0 |
Thanks for the info. I thought that my APU was disabled when I installed a GPU card? |
Cosmic_Ocean Send message Joined: 23 Dec 00 Posts: 3027 Credit: 13,516,867 RAC: 13 |
It may seem pointless and a bit excessive, but having that many apps means somebody has put in the time and effort to make apps that are specialized for certain crunching environments, rather than just one generic app that is supposed to be a catch-all for everything. While it is slightly inconvenient that it takes so long until you get to the '10 completed tasks' count for each of them, in the long run, if you don't already know what app is best for your hardware/driver setup, that's the point of running each of them: to find out which one yields the best performance. Basically, any of us that use these forums would be considered "power users" and we tend to know what's best for our machines... but the framework of the project is largely "set and forget" where everything is handled automatically in the background with no user intervention needed, beyond installing BOINC and attaching to the project. Us power users are well under 1% of the total. Catering to us isn't particularly a logical idea for the greater good--although a lot of our requests/grievances do end up serving the greater good in the long run, so.. we just kind of go with the flow here. Linux laptop: record uptime: 1511d 20h 19m (ended due to the power brick giving-up) |
Raistmer Send message Joined: 16 Jun 01 Posts: 6325 Credit: 106,370,077 RAC: 121 |
For those who too powerfull there is always offline benchmarking and anonymous platform available :P |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
Great, I put the question down, get 5 reactions of which 3 are a straight non-answer -including a snigger from the developer of these applications- one is someone with a moment of clarity and the other one is starting to give an explanation to then go off on a tangent about power users. The question is simple: why is there a need for 5 (or 7) different applications on the same hardware resource? It's not just for my understanding, but also for total newbies, or people who do read here - and wonder about the same thing - but have till thus far been too afraid to ask, perhaps due to exactly this circumstance: you ask a question and get non-answers. Or you get totally unnecessary advice about running an optimized application, with no explanation on how to do that, or what to do when a new version of the Seti applications comes out. After which you have a 95% chance that your thread ends up in a pro and con fight over the use of power apps, credits, and which GPU brand is best. So back to the problem at hand. An analogy: You go to 7 different stores to do your shopping and instead of using just one bank-card between them to pay for everything, all stores prefer their own payment method and so you walk around with a minimum of 5 cards, a load of cache and a pile of coupons. Yes, not impossible, but completely insane. Similarly, I don't see why one guppi needs to be done with the opencl_atiapu_sah app, then the next guppi with the opencl_ati5_sah app, then six MBs with the opencl_atiapu_sog app, one MB with the opencl_atiapu_sog_sah app, and two further MBs with the opencl_ati_sah app. I have an external HD7870 GPU, it's not an APU so I don't really need the ATIAPU apps. It's not a HD4xxx card, so I don't really need the *_ATI_* apps. If this is due to that Seti doesn't strictly follow the plan_classes... If this is due to Seti not being able to recognize the correct hardware versus the correct plan_class... If this is due to there being no filter for specific GPU names per plan_class... If this is due to the wide variety in hardware being available and the application not being able to switch internally to an older or newer OpenCL version, then say that. (ever thought about adding a check in the app to see what OpenCL capability there is and switch internally to the right app? It means a bigger science application, but imo simpler, because you don't see the switching, and you don't have 5, 7 or 11 different application names to switch between.) Now, I understand that we need a SAH application (cat132) for the older HD46xx/48xx hardware. I understand we need the ATI5 application to diverge from the above. But then ATI5 applications should be sent to minimum HD5xxx GPUs - which they aren't. I understand we need the NOCAL application for the newer hardware that doesn't do CAL recognition anymore, a thing required by BOINC and most science applications (here and elsewhere) to be able to recognize that this is indeed an ATI GPU and something capable of OpenCL. It would be nice if the above would follow the plan_class they were made for, but I have seen ATI5 apps being sent to HD4xxx GPUs and then erring. The Sneezing on Grass (SoG) application versions, mwoh thus far I don't see the need for it. It's not running work faster than the ATIAPU, ATI, ATI5 or SAH/CAT132 applications, on guppi's it's more likely slower. The warmest my GPU gets is with the Stepping on Glass (SoG) applications, the coolest it stays with the various SAHs. A difference of as much as 10 degrees centigrade (71C with a fan speed of 70% (3,000rpm) versus 61C with a fan speed of 40% (1,740rpm)), so I prefer to run the lower apps over the Sniffing on Glue (SoG) apps anytime. Here's a thought to clamp onto: there is talk about adding BOINC to the Apple Store, but Apple then requires that the BOINC Installer includes all possible science applications for all projects, because it does not allow applications in its store that download other applications. If the developers set this through, they wouldn't want to have to include 11 different stock Seti applications for the Mac only because there is a possibility that people run older hardware. They'd want one, maybe two applications per project's science range. Because with 50+ projects, you don't want people to download 750MB of installer including 60 applications per project. |
Raistmer Send message Joined: 16 Jun 01 Posts: 6325 Credit: 106,370,077 RAC: 121 |
Sorry did not read rest of quite a long post. To answer question: you really need to get familiar with how BOINC selects app for performance. It's part of BOINC framework quite long ago so such questions should be answered by BOINC Wiki or whatever. BOINC issues work for all compatible app as long as it needs to select most speedy one. Then almost only that app will get work with rare "check if no changes" tasks for others. And actually you already got fully correct answer earlier - there is some difference in app that each suits different hardware better - but limitness of manpower (wanna run thusand benches - you welcomed!) unallow to get strong boundaries what will be work better where. Strange you did not asked that question on 5 CUDA apps introduction - they do exactly same of capable hardware with CUDA23 pretty soon out of game on FERMI+. |
Raistmer Send message Joined: 16 Jun 01 Posts: 6325 Credit: 106,370,077 RAC: 121 |
They'd want one, maybe two applications per project's science range. Because with 50+ projects, you don't want people to download 750MB of installer including 60 applications per project. When any iPhone will support OpenCL we can return to this. Try to release at least SOMETHING with Apple.. good luck with that but I don't hold my breath. P.S. and regarding your funny ignorance about what SoG means... use the search they say? ;) |
Richard Haselgrove Send message Joined: 4 Jul 99 Posts: 14649 Credit: 200,643,578 RAC: 874 |
Double-check whether all of the applications you are referring to by plan_class names are actually different binary executables. I think they probably are, this time round, but it's as well to be sure. In earlier incarnations, sometimes the same app appeared in different clothes - e.g. so that an OpenCL app could present and be run as a straight ATI/CAL app for the benefit of a pre-OpenCL client. I think that the best current answer is more along the lines of "no-one can predict which application will perform best on a given host, given the variety of hardware platforms (GPU + host CPU/motherboard) run by volunteers here - which greatly exceeds the number of platforms run by testers". So Eric lets BOINC work it out by itself. |
jason_gee Send message Joined: 24 Nov 06 Posts: 7489 Credit: 91,093,184 RAC: 0 |
Trying to add to the discussion, by comparing the CudaMB situation: None of the applications barring stock CPU have very sophisticated dispatch mechanisms as yet. That makes for some pretty costly maintenance of number of builds on each platform. In the Cuda case, which for now still suffers this build creep, I *try* to limit to builds that make sense, knowing that number of builds costs focus, project resources, confusion, and introduces more points of failure, While in the Cuda case ongoing decreasing performance with newer Cuda versions and baseline code. The need to unify/streamline all of (as much as practical anyway) that became pressing with Maxwell generation, and possibly approaching critical with Pascal. This is simply because the architectures over the generations from initial Cuda devices (G80) through Modern ones have very significant differences in best ways to use the device. (Small example, G80 = no streams & hates Windows, Pascal- Must use streams and seems to be a Windows+Vulkan beast) Researching & building infrastructure to: - Allow putting install-time/first-run/profile-driven/run-time dispatch - Plugin infrastructure and threading support to ease future scalability (for unknown architectures) - fewer, more dynamic, builds that are more flexible - simplified cross platform build system and deployment Are things that the existing boinc infrastructure doesn't do for the developers, and indeed much of the stock CPU app capabilities here to achieve that were contributed well before my time. A bit more generalisation and streamlining will help, though I can vouch it's far more intellectually challenging than churning out bespoke applications like sausages. "Living by the wisdom of computer science doesn't sound so bad after all. And unlike most advice, it's backed up by proofs." -- Algorithms to live by: The computer science of human decisions. |
Admiral Gloval Send message Joined: 31 Mar 13 Posts: 20152 Credit: 5,308,449 RAC: 0 |
P.S. and regarding your funny ignorance about what SoG means... use the search they say? ;) I had the same question tovarisch and got a very long list. Shades of Green mean anything? |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
Answering in small bits, so Raistmer doesn't have to read big posts. Raistmer wrote: To answer question: you really need to get familiar with how BOINC selects app for performance. Ageless wrote: It's not just for my understanding, but also for total newbies, or people who do read here - and wonder about the same thing Mere users don't really need to dive into the highly technical BOINC documentation to get an answer to their question. |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
Raistmer wrote: there is some difference in app that each suits different hardware better OpenCL applications run on any OpenCL capable piece of hardware, as long as there are drivers for it and it's recognized as OpenCL capable. Essentially, an OpenCL application for an Nvidia GPU should be able to run on an AMD GPU, on a multi-core CPU, on any non-GPU co-processor and anything else that's OpenCL capable. Or as the Wikipedia page about it says: "Open Computing Language (OpenCL) is a framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), field-programmable gate arrays (FPGAs) and other processors or hardware accelerators. OpenCL specifies a programming language (based on C99) for programming these devices and application programming interfaces (APIs) to control the platform and execute programs on the compute devices. OpenCL provides a standard interface for parallel computing using task-based and data-based parallelism." I hope you know what heterogeneous means. If you so much want to suit all the different hardware better, then do so through the Lunatics optimized applications range, but leave it out of the stock applications. |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
Raistmer wrote: Strange you did not asked that question on 5 CUDA apps introduction Why is that strange? I don't have an Nvidia GPU. Had you taken the time to read my post(s) you would've seen I have removed the anonymous platform file, reset the project and am now running some stock work on my AMD HD7870 only. |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
Raistmer wrote: To answer question: you really need to get familiar with how BOINC selects app for performance. Ageless wrote: It's not just for my understanding, but also for total newbies, or people who do read here - and wonder about the same thing Mere users don't really need to dive into the highly technical BOINC documentation to get an answer to their question. |
Jord Send message Joined: 9 Jun 99 Posts: 15184 Credit: 4,362,181 RAC: 3 |
Raistmer wrote: P.S. and regarding your funny ignorance about what SoG means... use the search they say? ;) Oh, I know what it means, but since it must be a direct translation from something in Russian, it doesn't make any sense in English. You should've called it "Stargazing one's Gaussians" instead of "Signals on GPU", to stay in the spirit of Seti@Home. |
Mike Send message Joined: 17 Feb 01 Posts: 34253 Credit: 79,922,639 RAC: 80 |
Raistmer wrote:P.S. and regarding your funny ignorance about what SoG means... use the search they say? ;) Not sure ? To me it makes perfect sense but i`m german tho ? Whats done on CPU with non_SoG builds will be done on GPU with SoG builds. For GPU apps quite interesting IMHO. With each crime and every kindness we birth our future. |
kittyman Send message Joined: 9 Jul 00 Posts: 51468 Credit: 1,018,363,574 RAC: 1,004 |
Please stop fighting and get back to coding, perhaps? Maybe the diversity of hardware requires more apps than some would realize. As long as it all works, this is a rather stupid question in the first place. Maybe some are test apps. Maybe some didn't work well. Maybe we need twenty different apps//. "Freedom is just Chaos, with better lighting." Alan Dean Foster |
Mike Send message Joined: 17 Feb 01 Posts: 34253 Credit: 79,922,639 RAC: 80 |
Fighting ? I just answered a question. And to be fair its my responsibilty also as an alpha tester. With each crime and every kindness we birth our future. |
©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.