Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

macuser453787

macrumors 6502a
Original poster
May 19, 2012
578
151
Galatians 3:13-14
(Note to the moderators: While I am using a legacy Mac, this specific question has to do with proper GPU-accelerated render times in Final Cut Express, so I am in good faith putting this in the correct forum.) :)

-----------

I would GREATLY appreciate some help/insight as to how I can get Final Cut Express 4.0.1 to fully use my new EVGA 7800 GS CO (440/675 model, bought from Old-Macs.com). Here's the deal:

I have a Digital Audio G4 that has been upgraded over the years to these most recent specs: Dual 1.6 gHz PowerLogix processor upgrade, OSX 10.5.8, 1.5gb RAM, (2) Sonnet Tempo SATA PCI cards, (1) High Point RocketRAID SATA II PCI card (which is only being used as a HDD controller, not for card-supported RAID), 3 HDDs, 2 OWC SSDs, and until very recently, a GeForce 5200 FX GPU.

I did an extensive upgrade last week that included installing a new EVGA 7800 GS GPU (and a new PSU to handle it's power requirements). Xbench shows an improvement using the 7800. My Mac took it beautifully, no issues except that there is a long blue screen (or gray screen) that lasts for about 2 minutes before the login screen comes up. Other than that the card works without any problems as far as I know.

HOWEVER, Final Cut Expess render time got SLOWER with the 7800 based on a test file that I ran before the GPU upgrade and after. The 5200 performed better! (it should be noted here that the render test is effects-heavy, and that the 7800 should have eaten the 5200's time for lunch!)

This cannot be. After some consideration, it seems that the problem may be with FCE not recognizing the 7800 properly and therefore not fully utilizing it.

Steps taken:

I temporarily moved the following items out of the /users/username/library/preferences/ directory (into a folder on my desktop):

-- com.apple.FinalCutExpress.plist

Subdirectory /Final Cut Express User Data/:

-- Final Cut Express 4.0 Prefs

-- Final Cut Express Obj Cache

-- Final Cut Express Prof Cache.fcpch

After launching FCE again, it regenerated all files except the com.apple.FinalCutExpress.plist. I ran the test again (with the com.apple.FinalCutExpress.plist kept outside of the prefs folder) and the render time improved by about 2 minutes, but was still slower than the 5200 by a little over a minute. Then I did a second test after putting com.apple.FinalCutExpress.plist back into the prefs folder, and the render time slowed down by about 40 seconds.

Note: I installed Temperature Monitor and launched it/watched it during the tests described above, and the temperature of the GPU did not fluctuate by more than 1 degree (between 52º-53º Celcius), which I assume is most likely ambient temperature changes. If the GPU were truly being used I expect that number would go up noticeably more.

I have done some searching (on this forum and google) but haven't been able to find anything so far that addresses this specific issue/setup. I found some posts about changing an Info.plist line item to AGP instead of PCI, but that line item/text does not exist in my Info.plist for FCE.

I suspected at one point that the OS may be coming into play here, but I'm really not 100% confident of that. If it were, then I assume that in all likelihood Xbench would not have shown better numbers for the 7800, which suggests that OS-level nVidia GPU support is sufficient. However if I am incorrect and there IS something OS-specific that should be done (such as modding a kext file), please tell me by all means.

I'm looking for any help that anyone here can give me. Have you seen or run into this kind of thing before? How did you fix it? Is this truly an FCE-specific issue? Is there a plist mod or some other mod that can be done? Even if you've encountered similarly but not exactly this situation, whether on a G4 or G5, Final Cut Express or Final Cut Pro. ANY help would be appreciated.

Thanks in advance! :)
 
Last edited:

Erendiox

macrumors 6502a
Oct 15, 2004
706
12
Brooklyn NY
That's quite an extensive old setup there. Very nice.

I hate to rain on your parade, but the reason you're seeing no improvement in your render times is because rendering is done exclusively on the CPU. The GPU can help accelerate realtime playback, but does no rendering. There are certain specific exceptions to this (Such as Adobe Premiere with a CUDA enabled GFX card), but Final Cut Express does not utilize the graphics card in any way for rendering.
 

macuser453787

macrumors 6502a
Original poster
May 19, 2012
578
151
Galatians 3:13-14
That's quite an extensive old setup there. Very nice.

I hate to rain on your parade, but the reason you're seeing no improvement in your render times is because rendering is done exclusively on the CPU. The GPU can help accelerate realtime playback, but does no rendering. There are certain specific exceptions to this (Such as Adobe Premiere with a CUDA enabled GFX card), but Final Cut Express does not utilize the graphics card in any way for rendering.

Okay, can you help me understand something: Why would I see a 3-minute increase in render times going from the 5200 GPU to the 7800 GPU, when the 5200 is much slower than the 7800? Wouldn't such a time difference suggest that FCE is aware of the GPU capabilities, and thus, something about FCE (or the OS, or both) is not allowing FCE to make full use of the 7800? In other words, if all FCE rendering is truly CPU-based, I should see absolutely no difference in render times using one GPU vs. another.

FCE is aware of the GPU. When I installed the 7800 and launched FCE, it generated a new RT Extreme profile (which as I understand has to do with realtime playback).

Here's an excerpt from the FCE user manual, in a section titled "Factors That Affect Real-Time Performance":

"Graphics card speed and memory: Many video filters in Final Cut Express use your computer’s graphics card to process effects, leaving the computer processor free to perform other tasks. A faster graphics card with more RAM allows more real-time playback."

This suggests two things: 1) What you said is mostly correct, and 2) the GPU is generally used to process effects, whether during RT playback or during rendering. This would tend to make sense of why I got render times that differed by 3 minutes from one GPU to the other. And the test render file I'm using is effects-heavy.

Here's another excerpt from the manual:

"Keeping Track of Rendering Progress
The amount of rendering time depends on the type and number of effects that are applied."

So if we know that many video filters in Final Cut Express use the GPU to process effects, and that the amount of rendering time depends on the type and number of effects that are applied, doesn't that suggest that FCE utilizes the GPU to some degree for rendering?

Hence, my question: What is limiting FCE from using the 7800 more fully? Is there a plist or kext mod of some sort that can be done so that FCE can say "Oh, you've got THAT card installed! Let me use it better."

Please know, I understand the general limitations of the old tech that I'm using. But, there's no way a 5200 should be out-performing a 7800 at any time, in any way, under any circumstances.

However, I now have an idea: I will do a real-time playback of the test file without rendering and see if Temperature Monitor reports any temp fluctuations in the GPU.

Thanks very much for your help! I welcome any further input you may have. :)

-----------

UPDATE: I just played the test file unrendered, then I rendered it at a lower quality and played it again. Temperature didn't budge by even a single degree. This seems to suggest that FCE is not utilizing the 7800 very well at all, even for RT playback. If it were, I would expect the GPU temp to fluctuate during playback. Hence, FCE for some reason seems to be either not seeing or not fully using the GPU.

By the way, here is the GPU info from System Profiler:

GeForce7800 GS:

Chipset Model: GeForce7800 GS
Type: Display
Bus: AGP
Slot: SLOT-1
VRAM (Total): 256 MB
Vendor: NVIDIA (0x10de)
Device ID: 0x00f5
Revision ID: 0x00a1
ROM Revision: 2149
Displays:
hp L1902:
Resolution: 1280 x 1024 @ 60 Hz
Depth: 32-Bit Color
Core Image: Hardware Accelerated
Main Display: Yes
Mirror: Off
Online: Yes
Quartz Extreme: Supported
Rotation: Supported
Display Connector:
Status: No Display Connected

(I believe the last entry for "Display Connector" is in reference to the currently unused DVI connector.)
 
Last edited:

Erendiox

macrumors 6502a
Oct 15, 2004
706
12
Brooklyn NY
My friend - I can only speculate as to why you would pour so much time and energy into obsessing over the minute differences between hardware options in a 12+ year old machine.

That being said, the quote you dug up from the Final Cut Express manual pretty clearly states that the GFX card is only being used for real time processing. The CPU is still going to perform the final render on effects, even if the GFX card is used for playback. I can't account for why you're getting a three minute difference in rendering time on your segment. The difference should in theory be nothing.

The hardware you're using is too old for me to have any really good suggestions for you to improve the performance of the 7800. My honest suggestion is that you stop mulling over how to make your current machine faster and invest in some hardware and software that isn't completely dead. It would be time better spent.
 

macuser453787

macrumors 6502a
Original poster
May 19, 2012
578
151
Galatians 3:13-14
The hardware you're using is too old for me to have any really good suggestions for you to improve the performance of the 7800. My honest suggestion is that you stop mulling over how to make your current machine faster and invest in some hardware and software that isn't completely dead. It would be time better spent.

I appreciate your suggestion, but that's not where it's at for me just yet. Believe me, I greatly desire to step up to a fully loaded MP with all components that will make an NLE soar, but for now I'm working with what I have. I sincerely appreciate your help though! :)

Anyone else want to weigh in on this?
 

macuser453787

macrumors 6502a
Original poster
May 19, 2012
578
151
Galatians 3:13-14
The GPU can help accelerate realtime playback, but does no rendering...Final Cut Express does not utilize the graphics card in any way for rendering.

It's not my desire or intent to be unteachable. Humility is a good thing that I value greatly! :) If this is an unproductive use of time, then I would rather know sooner than later. That being said, can you explain factually how you know that FCE does not utilize the GPU for rendering? Is this something you have heard, or maybe read about? Can you provide a link to an article or website or something that actually says that?

My friend - I can only speculate as to why you would pour so much time and energy into obsessing over the minute differences between hardware options in a 12+ year old machine.

Respectfully (and I mean that sincerely), this is not an obsession. Knowing the overall hardware limitations with my Mac, I did not expect a significant performance increase with the 7800. But I did expect a performance increase, and I believe that's a reasonable expectation. Let me ask you this: If you had a $200 set of tires on your car, and then replaced them with a much better performing $800 set of tires, wouldn't you expect better performance from the $800 tires? Even if your car was not a new car or a sports car per se, wouldn't you want to know why your better-performing tires seemed to have the same or worse performance than the $200 tires when you drove the car? If you really wanted to keep the tires (instead of buying a whole new car), wouldn't you search out the answer until you found it?

That being said, the quote you dug up from the Final Cut Express manual pretty clearly states that the GFX card is only being used for real time processing. The CPU is still going to perform the final render on effects, even if the GFX card is used for playback. I can't account for why you're getting a three minute difference in rendering time on your segment. The difference should in theory be nothing.

I understand what the manual says, and conceded that already. If I wasn't clear about that, then please let me be clear about it now. What I'm talking about is troubleshooting: Identifying and eliminating variables until the desired result is achieved. Fact is, all else being the same (except the GPU) with the before and after render tests, and the fact that the temperature didn't fluctuate a single degree with the 7800 during RT playback in FCE earlier this evening, the only remaining variable points straight to FCE (unless there's some unknown combined issue with FCE/10.5.8 using my particular GPU).

-------------

Edit: After doing some more specific searching, I found the following posts addressing this topic:

https://forums.macrumors.com/threads/759194/

https://forums.macrumors.com/threads/555447/

https://forums.macrumors.com/threads/1079939/

http://forums.creativecow.net/thread/8/1095359


So I guess all I can say at this point is: Oops. Should've looked into it further on the front end. But, I'll have better playback and dual monitors! :)
 
Last edited:

acearchie

macrumors 68040
Jan 15, 2006
3,264
104
Let me ask you this: If you had a $200 set of tires on your car, and then replaced them with a much better performing $800 set of tires, wouldn't you expect better performance from the $800 tires? Even if your car was not a new car or a sports car per se, wouldn't you want to know why your better-performing tires seemed to have the same or worse performance than the $200 tires when you drove the car? If you really wanted to keep the tires (instead of buying a whole new car), wouldn't you search out the answer until you found it?

This is where your error lies. You were essentially asking why upgrading your tires hadn't increased the quality of your stereo. It's like apples and eggs. They aren't really related.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.