OS X :: What Programs Use OpenCL And GPU Acceleration
Aug 30, 2009
I have a question about how OpenCL works. What programs can utilize the GPU for processing? Does it happen automatically, or does the programming within the application have to state that the GPU can be used? It seems like everyone is excited about OpenCL and GPU acceleration, but how often is it used?
I have been reading that Apple worked with nvidia on OpenCL and that leaves me wondering: will ATI see all the same GPU acceleration of nVidia?
I am looking to buy an iMac in the next few months, and am stuck deciding between the lesser nVidia 130 that can use open CL or the fast ATi that may not...
I checked apple's website and went down to the requirements page. turns out, you require a nvidia or a very very recent ati chip to run openCL. the imac that i own has a ati radeon 2600 pro. what i don't get it, how is a nvidia 9400m more powerful than 2600 from ATI there seems to be no other reason than the fact that apple is being lazy about supporting fairly recent hardware. I only got this imac a couple of years a go and its still pretty new. Does apple expect me to get a new mac?
The broad industry support Apple is building around OpenCL will help increase the critical mass behind OpenGL, the 2D and 3D graphics language Apple uses extensively in Mac OS X. Since the mid 90s, Microsoft has worked to prevent the adoption of OpenGL as an interoperable industry standard in favor of its own proprietary DirectX portfolio of graphics software and gaming tools.
Don't get me wrong, the (apple-shipped) 8800GT has never given me a moment's worth of problem but it would seem that if there is OpenCL support for the GTX285 in SL next month, it may be worth it to drop the coin and get this card (I'll take it as a business expense).
Has anyone heard or seen something about officially supporting this card? When I looked on Apple's website under SL tech specs, this card isn't listed.
1) from wwdc latest information, Mac pro user will have only 3 Apple official option OpenCL that is : GeForce 8800 GT, GeForce GT 120 and Radeon 4870
2) but I think GTX285 and FX4800 will support too. (At least final ver. of Snow leopard)
3) Assume you want many core the best selection from 1) & 2) is ATI Radeon 4870 because it has 800 stream processor. GTX 285 have 240
4) Assume you want memory speed the best selection from 1) & 2) is ATI Radeon 4870 again because it GDDR5 (but i can't confidentally confirm it when 4870 have lower memory speed and lower memory bandwidth)
all the OpenCL sample apps from Apple, except for the "hello world" example, are failing.
Can anyone else confirm the same errors on their setup? Just so that I know for sure it is due to the 4870.
I will try putting in my GT120 and see what happens.
Code: Last login: Sat Aug 29 16:35:11 on ttys002 /Users/mani/Downloads/OpenCL_RayTraced_Quaternion_Julia-Set_Example/build/Debug/qjulia ; exit; Galactus:~ mani$ /Users/mani/Downloads/OpenCL_RayTraced_Quaternion_Julia-Set_Example/build/Debug/qjulia ; exit; Creating Texture 512 x 512... ---------------------------------------------------------------------- Using active OpenGL context... ---------------------------------------------------------------------- Connecting to AMD Radeon HD 4870... ---------------------------------------------------------------------- Loading kernel source from file 'qjulia_kernel.cl'... Error opening file qjulia_kernel.cl Error: Failed to load kernel source! Failed to setup compute kernel! Error 1 logout
[Process completed]
Code: /Users/mani/Downloads/transpose/transpose ; exit; Galactus:~ mani$ /Users/mani/Downloads/transpose/transpose ; exit; Error: Failed to load compute program from file! logout
[Process completed] And here's output from hello.c, which happens to work:
When Snow Leopard came out last year, Apple made marketing out of the fact of having no new features. Arstechnica wrote a splendid review praising the potential of the two new core technologies it brought, and the perspective performance improvements coming from them.
The "radically new development paradigm" was promising for a slower deployment, but I though it would have been compensated by the advantages in speed and code maintainability.
So I've been periodically sampling the Internet for news on either technology. I expected lists of applications employing them, or some visibility on existing apps directories (like "GCD" or "OCL" tags). In lack of these I then resorted to expecting some random block posts from developers, but even of this I find very little.
The most material you find from Robert Watson, concerning applications at the FreeBSD project!
So what happened to these technologies under the Mac? Did they pass ignored by Mac Developers? If so, why? If not, why do they not reflect publicly the same excitement that the competent Ars masters showed?
In the tech specs for Mac OS X 10.6 Snow Leopard it only lists the ATI Radeon 4850 and 4870 for supported graphics cards for OpenCL so does this new 4670 support OpenCL? I think it would be pretty silly to have the cheaper iMac with the GeForce 9400M support it but not the next step up with a dedicated card.
I have a question about using my new samsung tv as a monitor for my macbook. I have all the cables and such and my TV reads the computer. It actually shows the desktop background, mouse, and the toolbar on the tv... BUT....when i try and open a program such as safari or itunes it does not display the program on the monitor but rather on my macbook screen. It shows the program open on the tv monitor but it shoots off the screen and then opens on the macbook screen.
Also the mouse disappears from the tv monitor screen on the left side only, and when it does it becomes visible back on the macbook screen! Any tips or suggestions on how to get the programs to show up on the monitor instead of the macbook screen?
I'm a recent convert to using OS X as my main desktop and I'm loving it so far but with as with anything new I have a few gripes. One of the top being the sluggish feeling of the mouse movements. I have read of a few solutions to this and would like to get your expert opinions on what is the best route to go?
Microsoft Intellipoint - I just got away from these guys and it looks like I'm crawling back to them to resolve my mousing issues. Is anyone using Intellipoint with their mouse on OS X that can provide any comments?
I know people debate this like religion but if your sick of the mouse acceleration curve in OS X (like me) here is a GREAT utility for just turning it off...
[URL]
If you love the acceleration curve in OS X then disregard this post...
I just purchased an Aluminum MacBook 2.4GHz today, and I tried playing some H.264 Trailers and I am shocked by the performance. My other MacBook Pro 2.4GHz playing a 1080p trailer is using about 100% CPU (out of 200%) but my new MacBook played the same trailer at only 28% CPU usage (out of 200%). I'm wondering if anyone knows if there is some GPU decode acceleration happening with the 9400M GPU because the difference here is quite huge.
This works best with "How to speed up mouse tracking in OS X", found elsewhere in this forum.
Note that mouse acceleration in OS X cannot be terminated completely, unless you are using something like USB OVerdrive. Assuming you are not using or do not want to use USB overdrive or similarly complete solution, read on.
Download the source here:
[URL]
You'll get a Unix executable file. Open a Terminal window and drop the file onto it.
After "killmouseaccel", type "mouse" (without quotation marks), and make sure a space remains between the two words. Then hit enter.
Effect is immediate. Logging out or restarting will kill the effect, so you'll have to run it each time. You might be able to set it to an automatic script upon logging in. Something I haven't figured out yet.
Ideally, it's best to increase the mouse tracking speed first (using instructions I posted elsewhere in this forum), which should be permanent until you reset the speed in the actual mouse pref pane, and then run the executable to kill mouse acceleration.
As a long time Windows user when I first started using OS X a couple years ago, I remember the mouse control driving me nuts. It can be quite hard to get used to the OS X acceleration control. I explored a couple of the programs to let you customize the acceleration, but I guess my brain eventually just adapted as it stopped bothering me.
Now though, I am spending a good amount of time in Win 7 on my new Mac Pro. I'm finding that again, every time I go into OS X I find the mouse control very hard to adjust to. It's a Logitech Anywhere MX Mouse and I installed the drivers in both Win 7 and OS X.
Perhaps I am just loosing my mind...but it would be nice if I could have the exact same mouse experience when switching between OS's.
(edit: As a little bit of a further observation, I think the Win 7 mouse refresh rate is several times faster than what I observing in OS X and this is probably a big part of why I am feeling like I have more control in Win 7. Doing circles with my mouse in Win 7 creates a much more complete circle.)
Since we still seem to lag without hardware acceleration, just thought I'd give the new opera 11 a run, not quite scientific, but just my own interest.
On Peacekeeper - Opera 11.00.1156 - 7213 Safari 5.0.3 - 5116 Chromium 10.0.603.0 - 5088 Firefox 4.0b9 (20101226) - 4762
And then a javascript (sunspider) test, but only with chrome, since thats what I use. Chromium 10.0.603.0 - 243ms. Opera 11.00.1156 - 273ms. So looks like its now on par in the javascript and the best at html5 rendering so far interesting, also finally has extensions!
I'm having some trouble with my Logitech V450 Nano mouse. It feels awkward compared to a regular PC mouse.
To be more specific, I have trouble accurately moving the cursor. When I move the cursor a short distance, it feels like I'm moving through mud. By contrast, when I move the mouse over a longer distance, it feels much faster. This makes it really difficult for me to close windows and play any sort of FPS game.
Now, the Logitech software allows me to change the mouse acceleration, but it still feels really awkward. I've experimented with almost every setting but the speed still doesn't feel accurate/consistent. Does this make sense or am I taking crazy pills?
After I installed 10.6.1, my 17" uMBP doesn't play 1080p quicktime trailers if I use the 9400M chip. They play at really bad fps with QuicktimeX player. I use VLC to play them and they play as good as usual. So the 10.6.1 somehow broke the hardware acceleration part of 9400M for me. QuicktimeX player tries to accelerate the playback by hardware, which doesn't work, so it can't play them. VLC does it by CPU and it works.
I didn't have this issue with 10.6.
Anyone else with uMBP can test this out?
P.S. If I use the 9600 GT, they play nicely on QuicktimeX player as well as before.
Has anyone tried the new version of adobe flash with the hardware acceleration? Does it seem to present a lot of improvements? Also if I install it, how do I uninstall the current version? How do I remove this version when a new version comes out? Will Software Update automatically remove this version if a newer version comes out through apple's update?
Adobe this week issued a preview release of an update to its Flash Player, code-named "Gala," which allows for H.264 video hardware decoding in Mac OS X 10.6.3, placing less emphasis on a computer's CPU. The capability for Flash to use GPU hardware acceleration just became available with the Mac OS X 10.6.3 update for Apple's Snow Leopard operating system. A new technical note revealed a new framework that allows developers low-level access to H.264 decoding capabilities in Macs with compatible GPUs, including the GeForce 9400M, GeForce 320M and GeForce GT 330M. Previously, hardware acceleration for Flash was only available through Windows PCs and X86-based notebooks. Gala marks the first time Mac users will be able to benefit from hardware decoding of Flash.
"The combination of NVIDIA GPUs (GeForce 9400M, GeForce 320M or GeForce GT 330M) with the Gala version of Flash Player enables supported Macs running the current version of OS X to deliver smooth, flicker-free HD video with substantially decreased power consumption," Adobe wrote on its website, where the software can be downloaded. "Users will be able to enjoy a much smoother viewing experience when accessing rich, H.264 video content built with the Flash Platform from popular sites like [URL] or YouTube." The preview release of Gala is a sign of things to come, but does not yet provide consistent results. In a quick test, Engadget found that CPU use Apple's latest Core i7 MacBook Pros dropped a third to a half, but the Core i5 machine actually increased the CPU load by as much as 20 percent.
The Gala preview is intended for developers to test the new functionality and test compatibility. The feature is expected to find its way into the Flash Player after the release of version 10.1, expected to arrive in the first half of 2010. To test it, download the 7.4MB installer from Adobe. The preview release notifies users when hardware decoding is in use by displaying a small white square in the upper left corner of a video. Adobe has sought input from developers on the preview release as it prepares a final product for the general public. Gala is evidence of a rare positive between Apple and Adobe, two companies that have been engaged in a bitter rivalry of late. Most recently in their ongoing feud, Adobe abandoned development of Flash-to-iPhone porting software. After Apple's iPhone OS 4 developer agreement specifically prohibited the use of an intermediary tool, such as the one Adobe plans to release.
After Adobe employees criticized the iPhone for being a closed system, Apple fired back in a rare public comment, stating that Adobe "has it backwards," as Flash is "closed and proprietary." Apple has backed the open source standard HTML5 video streaming format while blocking the use of Flash on its portable devices, including the iPhone, iPod touch and iPad. At a company meeting in January, the Apple co-founder Steve Jobs was rumored to have called Adobe "lazy," and said most Mac crashes are due to Flash. "The world is moving to HTML5," Jobs was quoted as saying. Jobs also allegedly called Flash a "CPU hog" in a meeting with officials from The Wall Street Journal. The Apple co-founder was said to have called the Web format "full of security holes" and "old technology." For more on why Apple is unlikely to ever allow Flash onto its iPhone OS-powered mobile devices, see AppleInsider's three-part Flash Wars series.[View this article at URL]