Welcome to the MacNN Forums.

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.

You are here: MacNN Forums > Software - Troubleshooting and Discussion > macOS > OS X and velocity engine

OS X and velocity engine
Thread Tools
Merry Cherry
Guest
Status:
Reply With Quote
Dec 7, 2000, 01:22 AM
 
Is OSX going to take advantage of the velocity engine of the G4? If it yes, will it apply to all programs used in the OSX.

------------------
Why do you fear the dark so much, haven't you seen what light can do?
     
naden
Dedicated MacNNer
Join Date: Sep 2000
Location: Perth, Western Australia
Status: Offline
Reply With Quote
Dec 7, 2000, 01:34 AM
 
The Velocity Engine aka Altivec is a Motorola implementation of a vector unit for the G4 Processor. Note the word vector.

Currently only Quartz has been coded to take advantage of Altivec instructions. The extent of this is only known to Apple. But it is expected to be not too much.

Soo .. there is no need for other parts of the OS to be coded to take advantage of Altivec except maybe some math libraries.

Applications can themselves take advantage of Altivec using the appropriate compilers. Currently this is mainly Codewarrior.

Hope this helps.

Naden.
     
naden
Dedicated MacNNer
Join Date: Sep 2000
Location: Perth, Western Australia
Status: Offline
Reply With Quote
Dec 7, 2000, 01:38 AM
 
The Velocity Engine aka Altivec is a Motorola implementation of a vector unit for the G4 Processor. Note the word vector.

Currently only Quartz has been coded to take advantage of Altivec instructions. The extent of this is only known to Apple. But it is expected to be not too much.

Soo .. there is no need for other parts of the OS to be coded to take advantage of Altivec except maybe some math libraries.

Applications can themselves take advantage of Altivec using the appropriate compilers. Currently this is mainly Codewarrior.

Hope this helps.

Naden.
     
Scott_H
Professional Poster
Join Date: Jan 2000
Status: Offline
Reply With Quote
Dec 7, 2000, 02:29 PM
 
Soo .. there is no need for other parts of the OS to be coded to take advantage of Altivec except maybe some math libraries.
The memory management function calls can be vec'ed too. All the mem sets mem copys and mem moves can be faster. It's a good thing to do because all the applications can get this as well as the OS.
     
SYN
Senior User
Join Date: Oct 2000
Location: Paris, France
Status: Offline
Reply With Quote
Dec 7, 2000, 04:15 PM
 
Networking can also be significantly sped-up by altivec, I hope Apple has done AltiVec optimization for the Networking stack. I can wait for OSX, if they give me usable beta. I just want it to come out screaming.

------------------
Soyons r�alistes, demandons l'impossible.
Soyons R�alistes, Demandons l'impossible
     
mjtomlin
Fresh-Faced Recruit
Join Date: Oct 1999
Location: Fremont, CA, USA
Status: Offline
Reply With Quote
Dec 8, 2000, 08:56 AM
 
I thought the AltiVec unit in G4 was designed to have a lot of different advantages; Voice Recognition, Telephony, Networking, Graphics, Compression, Encryption

Why wouldn't Apple take advantage of this, especially since they've pushed it so much?

I wouldn't be surprised if a lot of the code in MacOS X was enabled to take full advantage of the G4/AltiVec architecture.
     
ShortcutToMoncton
Addicted to MacNN
Join Date: Sep 2000
Location: The Rock
Status: Offline
Reply With Quote
Dec 8, 2000, 11:35 AM
 
One other random comment....

The first reply notes that Altivec shouldn't result in muc of a speedup. Well that may indeed be the case, it should be noted that of the beta testers on this board, most of the people complaining of absymal speed are non-G4 owners (or, I guess, G3 owners.... )

Most of the testers with G4s (like myself) have reported seeing only minor slowdowns in graphical operations such as window moving, operating menus and othr Quartz-related tasks. Hopefully, this is a sign that can be transferred to the other operations mentioned in previous replies....

greg

------------------
Though the day's been
really long
I still feel I'm close to
nowhere....
Mankind's only chance is to harness the power of stupid.
     
Dogbert
Guest
Status:
Reply With Quote
Dec 8, 2000, 10:03 PM
 
The G4 velocity engine is also used extensively in QuickTime.
     
naden
Dedicated MacNNer
Join Date: Sep 2000
Location: Perth, Western Australia
Status: Offline
Reply With Quote
Dec 9, 2000, 02:11 AM
 
I apologise for my stupidity. I just did a report on Altivec optimizations so Im suprised at how silly I sounded.

Everyone is right. Any application that involves a lot of numbers moving around or being manipulated can benefit from Altivec. I forgot that integers/single precision fps can be packed into Altivec vectors and manipulated that way.

So yes, Quicktime would greatly benefit as would memory. Now where's the damn Altivec Divx/3vx encoders.

Naden
     
..dylan..
Guest
Status:
Reply With Quote
Dec 12, 2000, 03:44 AM
 
I agree with everyone.

I've seen good performance on a G4 compared to a G3. I've got a 400mhz iMac DV sitting next to my 400mhz G4, and there is a noticeable difference in the fluidity and response of the UI.

I still feel the Aqua is much to slow in comparison to OS 9, but these are things that will certainly be fixed when the release comes out, seeing as how it's too obvious to miss.

I didn't really even notice it, to be fair, until I rebooted into OS 9 on the G4 and found things to be flying out of the screen at me. It was a little bothersome at first, actually.

As far as why Apple is / is not building tight OS X integration with AltiVec, I've got a deeper theory.

Anyone notice all the talk about OS X being ultra portable? I think it relates to this thread. Why would Apple spend time tuning it's OS to the G4 if their is a lot of worry about Motorola's ability to produce working, faster G4 chips? The G4 is an excellent chip, but if Apple can't start shipping faster clock speed's, the market isn't going to react well.

Already, the 7410's (G4) performance has been trumped by AMD's Athlon, and selling a new system to the average consumer, who looks at better numbers as meaning better computing (without looking at the whole user experience) is getting harder and harder everyday. Notice the discounts on everything these days? It's Christmas, I know, but Apple is getting hit worse then they _should_ be.

The point is, spending the time to tune OS X for AltiVec with the whole Motorola issue in question doesn't make business sense, and Apple is a business, afterall.

Dylan
     
xyber233
Mac Elite
Join Date: Oct 2000
Location: Chicago
Status: Offline
Reply With Quote
Dec 12, 2000, 11:30 AM
 
So, does a G4 make a huge difference? I am thinking of upgrading my iMac. Will a 433mHz G4 be faster in Mac OS X than a 500mHz G3?
     
anothermacguy
Mac Enthusiast
Join Date: Oct 2000
Location: Toronto
Status: Offline
Reply With Quote
Dec 12, 2000, 02:32 PM
 
What upgrade were you going to use? I haven't seen any for the new imacs running at 500. Who's making it?
     
Jsnuff1
Mac Elite
Join Date: Jun 2000
Location: NY
Status: Offline
Reply With Quote
Dec 12, 2000, 02:48 PM
 
Originally posted by xyber233:
So, does a G4 make a huge difference? I am thinking of upgrading my iMac. Will a 433mHz G4 be faster in Mac OS X than a 500mHz G3?
take away the atlivec unit on the g4 and you got a g3, so really if your programs are not altivec enhancec the g4 433 is gonna be slower than the g3 500, i would go with the g4 though if u plan on doing a lot of video editing and graphics work.

     
zpincus
Dedicated MacNNer
Join Date: Dec 2000
Location: stanford, ca, usa
Status: Offline
Reply With Quote
Dec 12, 2000, 05:47 PM
 
What upgrade were you going to use? I haven't seen any for the new imacs running at 500. Who's making it?
Apple marketing strategy prevents them from offering G3 processors that are faster than G4 processors. (I can't decide if this is good or not. Many poeple would find it strange if top of the line apple computers suddenly started using 700 Mhz G3s instead of G4s. Even wierder would be 700 Mhz iMacs when the "top of the line" G4s stagnate at 5-600.)
So who makes these mythical beasts? IBM has fast G3s out, and roadmaps to 1.5 or 2 Ghz bu the end of next year with their "G3e" chips. Why aren't they making fast G4s? Because Motorola owns the Altivec rights.... So now, Apple, after touting its "Velocity Engine" is in a bind -- if they stick with it, they are going to be hobbled.
I don't know which, if any upgrade manufacturers are planning on incorporating IBM chips into upgrades, though...

Zach.

(Now, something about OS X so this thread doesn't get to moved elsewhere)
Will OS X with its Velocity engine code run faster on a 500 Mhz G4 or a 700 Mhz G3? )
     
xyber233
Mac Elite
Join Date: Oct 2000
Location: Chicago
Status: Offline
Reply With Quote
Dec 12, 2000, 07:55 PM
 
Powerlogix makes the 500mHz iForce iMac upgrade. If Mac OS X uses altivec, would all the programs run faster because the system uses it?
     
ShortcutToMoncton
Addicted to MacNN
Join Date: Sep 2000
Location: The Rock
Status: Offline
Reply With Quote
Dec 12, 2000, 08:01 PM
 
MacOS X is specifically optimized for Altivec (ie. the G4). This IS A FACT. So, yes...a G4 machine will run MacOS X faster than a comparable G3. How much more remains to be seen.....

greg

------------------
Though the day's been
really long
I still feel I'm close to
nowhere....
Mankind's only chance is to harness the power of stupid.
     
MikeM32
Banned
Join Date: Dec 2000
Location: "Joisey" Home of the "Guido" and chicks with "Big Hair"
Status: Offline
Reply With Quote
Dec 13, 2000, 12:23 PM
 
MacOS X is specifically optimized for Altivec (ie. the G4). This IS A FACT. So, yes...a G4 machine will run MacOS X faster than a comparable G3. How much more remains to be seen.....
I understand OSX will "make better use" of the G4 chip compared to the only slight difference between the G3 and G4 under the current OS.

What I'm really interrested in is if a single G4 (non Multi-Processor) will be significantly faster under OSX then under OS 9.0.4.

I've been "flip-flopping" on an upgrade at home here, and I don't know whether to go with an MP or simply a single G4. The MP may be alot more then I require performance-wise, and ultimately alot more money then I may need to spend.

Mike
     
Scott_H
Professional Poster
Join Date: Jan 2000
Status: Offline
Reply With Quote
Dec 13, 2000, 01:11 PM
 
Well what are you going to do with the computer? I'm not a big fan of MP computers for desktop uses so most often I say save the money.
     
MikeM32
Banned
Join Date: Dec 2000
Location: "Joisey" Home of the "Guido" and chicks with "Big Hair"
Status: Offline
Reply With Quote
Dec 13, 2000, 02:12 PM
 
Well what are you going to do with the computer? I'm not a big fan of MP computers for desktop uses so most often I say save the money.
Yep my feelings more or less also. At home here I''ll probably never see a huge benefit of a Multi-Processing platform, even with the occasional (because use them every day at work, so quite frankly at home I can't stand doing it often) Photoshop, Illustrator, and QuarkXPress stuff I do on my own system.

The availability of a machine that can handle these applications is important to me. Mostly I'm on the web at home, but because I do the occasional graphics at home I'm not going for an iMac (which to me is really mainly an internet machine). If they released an iMac with a larger monitor however I may change my tune here

I'm still going to hold off to see what "goodies" are released next month, but I may just go for a priced down current model after all the new stuff is out there.

I'm wondering what the new base models will be. I think the single G4/400 tower and G4/450 Cube must be getting upped to something faster.

Mike

[This message has been edited by MikeM32 (edited 12-13-2000).]
     
Angus_D
Addicted to MacNN
Join Date: Mar 2000
Location: London, UK
Status: Offline
Reply With Quote
Dec 13, 2000, 02:17 PM
 
I'd actually prefer it if Apple didn't optimise OS X for the G4, ditched the G4 and Motorola altogether and went with IBM and their 10GHz G3s.
     
Todd Madson
Mac Elite
Join Date: Apr 2000
Location: Minneapolis, MN USA
Status: Offline
Reply With Quote
Dec 13, 2000, 03:29 PM
 
My understanding is that optimization has already been done in some
areas.

My 400 mhz G4/400 with 128 megs of ram experienced a blast of speed
increases going from OS X DP 4 to OS X PB. PB was noticeably faster
in nearly every area.

However, PB was not as fast as OS 9.04, which is not surprising. It
would be very nice if OS X had a software switch to shut off all of
the "eye candy" to be a more realistic barometer of its possible speed.

The other issue would be: since there are no benchmarking utilities
for OS X as yet, speed would be considered relative. The G4 at this
time is faster than equivalent G3s. However, it would be very
interesting to benchmark a 700-800 mhz G3 vs. a 500 mhz G4.

     
zpincus
Dedicated MacNNer
Join Date: Dec 2000
Location: stanford, ca, usa
Status: Offline
Reply With Quote
Dec 13, 2000, 05:44 PM
 
Well what are you going to do with the computer? I'm not a big fan of MP computers for desktop uses so most often I say save the money.
OS 9.0.4 "support" for MP is pretty weak -- only apps coded for MP will even be able to notice that there is another processor and use it. So right now, if you own a Dual, there is a good chance that most of the time the 2nd processor is idle or just running system tasks (and maybe the occasional photoshop filter...)

OS X is a different story. AFAIK, any multithreaded apps (MP "aware" or not) can be put on two procs. A quick look at how many MT apps are running (in top) should convince you that putting them on two procs is a good thing for anyone. Also, I believe that in X, single-thread apps cn be apportioned so that some run on one proc. and some on others, so that each processor will have less load than otherwise. Bottom line -- you no longer have to be running Quark or Photoshop to reap benefits from MP machines. Trivial example: Quicktime could be on one processor and Soundjam on another so that encoding MP3's will no longer make movies drop frames.
(I might be totally off on this, but this is what I remember from the last stuff I read, which I can't find right now.)

Now, MP doesn't scale linearly, so in most cases, two 500 MHz procs won't be as fast as one 1 GHz, but there are significant speed gains to be had from a MP machine over a single under the OS X thread manager

So Scott H -- MP for a modern desktop environment is definitely good, and seeing as how the money saved in going to a SP desktop isn't huge, I think that under X, the wise thing to do really is to pony up and get the extra processor.
     
Scott_H
Professional Poster
Join Date: Jan 2000
Status: Offline
Reply With Quote
Dec 13, 2000, 06:22 PM
 
Yea. I've been over and over MP machines back when they first came out. I just don't think OS X and it's apps will be rich in multi-threading. At least not in a way that will have a big effect on day to day use.

In my experience most spun off threads do one of two things; Execute quickly and then sit there and wait for more data, or execute quickly and die. So most of the time the threads are doing nothing or gone.

I doubt there will be that many true MP aware apps. Unless you do a lot of work with MP apps then that advantage is of little use.

Most people do one thing at a time. Most apps are not and will not be MT and MP aware. A plucky little iMac can do what 99% of users need.
     
zpincus
Dedicated MacNNer
Join Date: Dec 2000
Location: stanford, ca, usa
Status: Offline
Reply With Quote
Dec 13, 2000, 06:52 PM
 
I doubt there will be that many true MP aware apps. Unless you do a lot of work with MP apps then that advantage is of little use.

Most people do one thing at a time. Most apps are not and will not be MT and MP aware. A plucky little iMac can do what 99% of users need.
I think you're missing the point. The cool thing about the OS X thread manager (again, AFAIK / can remember) is that single-threaded applications are apportioned intelligently between both processors. So you get a speedup even if you are only running single-thread apps.

I strongly disagree that most people only actively run one single-threaded application at a time. At the very minimum, a lot of my cohort runs an MP3 player 100% of the time in addition to whatever else they may be doing. Throw in a download in the background, and maybe a printing task here and there, and then even MS Word can get sluggish at times on my plucky Beige G3. I don't think that this is that unusual use. Not to mention the professional users of Macs, who you do a huge disservice to by estimating them to be only 1% of the Mac market, are likely to have far less modest demands.

Not to mention the fact that, yes, even when optimized, OS X and aqua are going to require a lot more processing power to be 100% as smooth as OS 9. While Motorola stagnates, it will sure be nice to have the window manager off barfing all over a separate processor while I drag my bad-a_s transparent terminal all around the screen. (Of course a 1 x 1GHz machine would be better than a 2x500, but I'm not holding my breath...) Also, the TrueBluEnvironment usually runs at about 12 threads. Since classic speed matters a lot to everyone , this will also make things a lot better. (And even if it was one thread, it would still be better to have the ability to shuffle it to the less-utilized processor.)

As far as gaming goes, I really don't know how many games are MT, but I'd imagine that plenty are. This is good, too.

In addition, MP seems to be Apple's roadmap for the time being. MOSR suggests a quad sometime next year... So clearly, the OS is going to be coded with MP support in mind. (Noit to mention that coding MP/MT apps makes them better on SP machines because the thread manager has more granular control over apps.) So even just having the OS and kernel fully MP aware provides significant benefits.
Throw in a few MT programs and a lot of ST programs intelligently shuffled between processors, and I think that there is a real speed gain to be had.

Sure, MP isn't for everyone. But I think it will be beneficial for a lot more than the hard-core Photoshop/Quark crowd.

Zach
(Sorry for the long post.)
     
zpincus
Dedicated MacNNer
Join Date: Dec 2000
Location: stanford, ca, usa
Status: Offline
Reply With Quote
Dec 13, 2000, 07:01 PM
 
Sorry, one more little thing.
The need for "MP-awareness" that you keep talking about is a lot less pressing in OS X (maybe even not at all?) With a good thread manager, MT automatically implies full MP utilization, even if the program isn't "MP aware." (A term which loses all meaning under a real thread manager, unlike OS 9's one...).
For example, in my 3rd Quarter intro CS class, we did a threaded assignment that spawned (seriously) hundereds of concurrent threads. Running this on the big MP Solaris serves we have, I could watch my threads bounce around from proc to proc in top. Now I sure didn't program an "MP-aware" application, but it took full advantage of all the free cycles on all the procs. (Now, I am pretty sure the Solaris thread manager is better than Mac OS X's, but I don't think it is that much better...)

Your point about the paucity of MT apps, and the worthlessness of most of the threads you've seen, is very well taken.
With the advent of MP Macs and OS X's real thread manager, though, I would hope that this will (albeit slowly) change.

Zach
     
Scott_H
Professional Poster
Join Date: Jan 2000
Status: Offline
Reply With Quote
Dec 13, 2000, 07:28 PM
 
Guys look. I know all that. I took all that into account in my other replies. I've been using MP UNIX systems for years. I just don't think that many apps will be MT or MP. Sure different processes will have the advantage of SMP but in my experience most often you have one one process that hogs the CPU and others that only need a little bit of it. For example my MP3 player on my UNIX box at work uses only 5% of the CPU.

Anyway I've had my say so I'll leave this thread alone.

[This message has been edited by Scott_H (edited 12-13-2000).]
     
..dylan..
Guest
Status:
Reply With Quote
Dec 13, 2000, 10:36 PM
 
This keeps bugging me, so I figured I'd say something.

There is, _technically_, under OS X (or any modern OS for that matter, except Win95/98/ME), no such thing as an multi-processor aware application.

Under OS 9, an app needs to be "MP aware" to take advantage of additional processors, since OS 9 lacks a kernel based thread manager.

Under OS X, the kernel will intelligently allocate THREADS across processors based on current load. So, if you fire up your OS X system (on a dual 500 machine) and start an MP3 player, the CPU that's being used the least will get the MP3 player's thread. Launch Photoshop and do some image editing, and the primary Photoshop thread will (if all goes to plan), get assigned to the other CPU (not the one the MP3 player is using).

An application developer is foolish to _not_ incorporate multiple threads into their application, as under OS X, even a single CPU will be able to deliver solid multitasking to a multithreaded application.

Add that second CPU, and you've instantly cut the first CPU's workload in half.

I _do_ agree that Apple is messing up the threading implementation of their applications though.

For example, launch Music Player and load about 10 or 20 tracks into the playlist (I'm doing this on a 400mhz G4 (single cpu) with 256MB of RAM). Then, start playing the first track, launch Internet Explorer (or another application).

Unless I'm taxing the system in another way, Music Player stays true and plays without skips.

Now, load some new tracks into the Music Player playlist _while_ it's playing that same song. Skip, skip, skip.

This suggests that OS X is handily multitasking the different apps that are running (as it should), but that the Apps aren't being careful to help the OS out in this regard.

Pre-emptive multi-tasking and multithreading are excellent (and required) things to have in OS X but good application design and intelligent implementation of those threading features are always going to be the responsibility of the application developer.

Of course, it is a beta, and hopefully, this will all be nicely tuned up by the release.

Dylan

PS: If my grammer or spelling are wrong, I apologize. It's been a very long day again.
     
..dylan..
Guest
Status:
Reply With Quote
Dec 13, 2000, 10:42 PM
 
One other quick thing ..

The Mach kernel is, in my estimation, better then the Solaris kernel for thread management. It just seems (I refrain) that Apple hasn't got the thread priorities in OS X fixed up quite yet.

We're not talking leaps and bounds here, but the design of Mach is pretty solid.

Dylan
     
mr_sonicblue
Mac Elite
Join Date: Sep 2000
Location: Eagan, MN
Status: Offline
Reply With Quote
Dec 13, 2000, 10:57 PM
 
Linux Kernel 2.4: 32 processor sync processing! I'm not sure *exactly* how things are handled there, but people are anticipating it. (Now where am I going to get 31 more processors...?)

Does OS X have a processor limit? 2? 4? I'm sure it doesn't help us home users to have a dozen processors, but it'd be nice to know OS X's limits on a high-end enterprise server.

------------------
-Eric Schneider (SonicBlue)
     
   
 
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Top
Privacy Policy
All times are GMT -4. The time now is 12:09 AM.
All contents of these forums © 1995-2017 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.8 © 2000-2017, Jelsoft Enterprises Ltd.,