amiga.org
     
iconAll times are GMT -6. The time now is 04:21 AM. | Welcome to Forum, please register to access all of our features.

» Amiga.org » Amiga computer related discussion » Amiga Hardware Issues and discussion » Hyper-Threading processor question

Amiga Hardware Issues and discussion This forum is dedicated to the discussion and resolution of issues related to Classic and Next Generation Amiga hardware. Got a problem with a piece of hardware? Click to speak.

Reply
 
Thread Tools Display Modes
Old 02-14-2007, 10:08 PM   #1
Roj
Technoid
Points: 9,734, Level: 66 Points: 9,734, Level: 66 Points: 9,734, Level: 66
Activity: 2% Activity: 2% Activity: 2%
 
Roj's Avatar
 
Join Date: Jun 2002
Location: Illinois
Posts: 361
Default Hyper-Threading processor question

I could be wrong about this. My knowledge of hardware is somewhat limited, especially modern stuff, but I just bought a hyper-threading processor for my PC, and after having read about the idea behind hyper-threading, I can't help but think that this innovation for PCs is something that Amigas have done for over 20 years.

Hyper-Threading, as I understand it, is the capability of busting large processes up into smaller pieces for the sake of efficiency so that less of the processor is left idle during task execution. One article I've read on the subject indicates that Intel was reluctant to evolve HT because it became clear that HT meant more to the apparent speed of a processor than did processor speed alone, and Intel was relucant to surrender the meaning behind the GHz rating of their processors. AMD has always argued that processor power meant much less to performance than other issues, one of them being HT technology.

So, am I right in believing that one of the things that keeps a 60MHz 68060 operating seemingly as fast, if not faster in some cases, than a 2GHz Pentium 4, or is there more to it than I've been able to pick up so far?
__________________
I sold my Amiga for a small fortune, but a part of my soul went with it.
Roj is offline   Reply With Quote
Old 02-14-2007, 10:18 PM   #2
Piru
Banned
Points: 30,457, Level: 100 Points: 30,457, Level: 100 Points: 30,457, Level: 100
Activity: 69% Activity: 69% Activity: 69%
 
Join Date: Aug 2002
Location: Helsinki, Finland
Posts: 6,946
Default Re: Hyper-Threading processor question

Quote:
So, am I right in believing that one of the things that keeps a 60MHz 68060 operating seemingly as fast, if not faster in some cases, than a 2GHz Pentium 4
In no cases is 60MHz 68060 faster or even close to as fast as 2GHz P4, not even seemingly. What you're experiencing as "speed" is just the user interface. If you run Workbench on P4 it's even tons faster than on 060. It's all about software.

Quote:
or is there more to it than I've been able to pick up so far?
There is more to this. Hyperthreading is just something that allows use of the CPU resources that would otherwise be wasted. 68060 doesn't have anything similar in it. See Wikipedia: Hyperthreading.
Piru is offline   Reply With Quote
Old 02-14-2007, 10:48 PM   #3
Roj
Technoid
Points: 9,734, Level: 66 Points: 9,734, Level: 66 Points: 9,734, Level: 66
Activity: 2% Activity: 2% Activity: 2%
 
Roj's Avatar
 
Join Date: Jun 2002
Location: Illinois
Posts: 361
Default Re: Hyper-Threading processor question

Quote:
There is more to this.
While the 68060 doesn't have the HT resources of modern CPUs, busting processes/tasks up into smaller units to run in parallel has been happening for some time, at least on a small scale. Several Amiga processes appear do it anyway. On the software side, that seems somewhat similar to what HT is trying to do, at least in part.

At any rate, it sounds to me like a hardware and software approach to a situation Amiga developers have used strictly software to address.
__________________
I sold my Amiga for a small fortune, but a part of my soul went with it.
Roj is offline   Reply With Quote
Old 02-14-2007, 10:52 PM   #4
Piru
Banned
Points: 30,457, Level: 100 Points: 30,457, Level: 100 Points: 30,457, Level: 100
Activity: 69% Activity: 69% Activity: 69%
 
Join Date: Aug 2002
Location: Helsinki, Finland
Posts: 6,946
Default Re: Hyper-Threading processor question

No. Amiga developers didn't do the same in software.

You're comparing apples and oranges here.
Piru is offline   Reply With Quote
Old 02-14-2007, 11:31 PM   #5
LoadWB
VIP / Donor
Points: 14,089, Level: 77 Points: 14,089, Level: 77 Points: 14,089, Level: 77
Activity: 43% Activity: 43% Activity: 43%
 
Join Date: Jul 2006
Posts: 2,228
Default Re: Hyper-Threading processor question

Have to definitely agree with Piru here. While the 68060 has a nice scalar pipeline, it really is nothing compared to a modern CPU. Even caching schemes have evolved over the past decade to be much more efficient and prediction is more accurate (amazingly.)

What we as Amiga users experience is a light-weight operating environment on a well-designed processor. You could make equal comparisons to PalmOS on an XScale CPU (case in point, Garnet on my LifeDrive, crashes aside, it's a real performer,) or Symbian on a good mobile phone.

But you simply cannot compare software performance to CPU performance. While OS3.9 on a 50MHz 68060 may run seemingly as fast as Windows XP on a 1.2GHz P4 (stretching it, I know, but bear with me,) 68060-native Windows XP would run slower than GEOS 64. (Makes me wonder how well PPC-native Windows NT ran. Hey, anyone ever get NT4 PPC working on Amiga gear?)

If you REALLY want to learn about how this stuff works, pick up a good book on the MIPS processor sometime and get SPIM, the MIPS CPU emulator (PC and Unix versions are available, I don't know about other platforms.) We used this CPU in a CS class (at least, we used the emulator.) It is absolutely fascinating. One of our assignments was to write a program which do not stall any of the CPU's pipelines -- a single stall meant a failing grade. After this class I went back to some of my old 6502 code and rewrote it to be tighter.
LoadWB is offline   Reply With Quote
Old 02-14-2007, 11:42 PM   #6
Roj
Technoid
Points: 9,734, Level: 66 Points: 9,734, Level: 66 Points: 9,734, Level: 66
Activity: 2% Activity: 2% Activity: 2%
 
Roj's Avatar
 
Join Date: Jun 2002
Location: Illinois
Posts: 361
Default Re: Hyper-Threading processor question

I was leaping to the conclusion that splitting processes into separate smaller units increased efficiency, and concluding that HT's benefits come from a similar, and admittedly more advanced method of task management.

I'm not trying to imply that an 060 = P4 by any means. The notion just occurred to me while watching Windows refresh the display in chunks after copying some fairly large files. Reading up on hyper-threading gave me the impression that the intent is to eliminate such glaringly obvious deficiencies in Windows' multitasking efforts.
__________________
I sold my Amiga for a small fortune, but a part of my soul went with it.
Roj is offline   Reply With Quote
Old 02-15-2007, 12:32 AM   #7
Zac67
Kindred of Babble-on
Points: 12,866, Level: 74 Points: 12,866, Level: 74 Points: 12,866, Level: 74
Activity: 16% Activity: 16% Activity: 16%
 
Zac67's Avatar
 
Join Date: Nov 2004
Location: Erlangen, Germany
Posts: 2,890
Blog Entries: 4
Default Re: Hyper-Threading processor question

Hyperthreading imho is a marketing gag for the most part.

Essentially it's a second scheduler that's able to use CPU units currently not in use, due to bad optimization, bad OS design or just bad luck. It does remove some overhead since less software scheduling has to be done, but that's near to nothing compared to the speed of modern CPUs.

BTW, only Intel Netburst CPUs use HT, in general it's called SMT (Simultaneous Multi Threading) - if it were such an improvement, it would be more widely used.

Netburst architecture has reached end of life, because it uses too much eletrical power (due to high clock rates). It was introduced when Intel had no match for AMD's Athlon.
Zac67 is offline   Reply With Quote
Old 02-15-2007, 01:52 AM   #8
iamaboringperson
Guru Meditator
Points: 14,413, Level: 77 Points: 14,413, Level: 77 Points: 14,413, Level: 77
Activity: 0% Activity: 0% Activity: 0%
 
Join Date: Jun 2002
Posts: 5,744
Default Re: Hyper-Threading processor question

Quote:
Roj wrote:
I could be wrong about this. My knowledge of hardware is somewhat limited, especially modern stuff, but I just bought a hyper-threading processor for my PC, and after having read about the idea behind hyper-threading, I can't help but think that this innovation for PCs is something that Amigas have done for over 20 years.

Hyper-Threading, as I understand it, is the capability of busting large processes up into smaller pieces for the sake of efficiency so that less of the processor is left idle during task execution. One article I've read on the subject indicates that Intel was reluctant to evolve HT because it became clear that HT meant more to the apparent speed of a processor than did processor speed alone, and Intel was relucant to surrender the meaning behind the GHz rating of their processors. AMD has always argued that processor power meant much less to performance than other issues, one of them being HT technology.

So, am I right in believing that one of the things that keeps a 60MHz 68060 operating seemingly as fast, if not faster in some cases, than a 2GHz Pentium 4, or is there more to it than I've been able to pick up so far?
Wow. You really need to read up on these things.

The Amiga had nothing like Hyperthreading. Not even in software (whatever that means).

When Windows appears to do things in chunks, that has nothing to do with Hyperthreading, either.
iamaboringperson is offline   Reply With Quote
Old 02-15-2007, 04:31 AM   #9
Karlos
Sockologist
Points: 49,956, Level: 100 Points: 49,956, Level: 100 Points: 49,956, Level: 100
Activity: 5% Activity: 5% Activity: 5%
 
Karlos's Avatar
 
Join Date: Nov 2002
Location: Barishabaad, Sardistan
Posts: 16,642
Blog Entries: 18
Default Re: Hyper-Threading processor question

Quote:
Piru wrote:
In no cases is 60MHz 68060 faster or even close to as fast as 2GHz P4, not even seemingly.
Not true!!11! It's just as fast at waiting for something to do...
__________________
OCA
This isn't SCSI... This is SATA!!!
I have CDO. It's like OCD except all the letters are in ascending order. The way they should be.
Core2 Quad Q9450 2.66GHz / X48T / 4GB DDR3 / nVidia GTX275 / Linux x64, AROS, Win64
A1XE 800MHz / 512MB / Radeon 9200 / OS4.1
A1200T BPPC 240MHz / 256MB / Permedia 2 / OS 3.1 - OS3.9, OS4
A1200T Apollo 1240 28MHz / 32MB / Mediator1200 / Voodoo 3000 / OS3.9
A1200D Apollo 1240 25MHz (ejector seat ROM edition) / 32MB
Karlos is offline   Reply With Quote
Old 02-15-2007, 05:17 AM   #10
bloodline
Master Sock Abuser
Points: 38,902, Level: 100 Points: 38,902, Level: 100 Points: 38,902, Level: 100
Activity: 26% Activity: 26% Activity: 26%
 
bloodline's Avatar
 
Join Date: Mar 2002
Location: London, UK
Posts: 11,888
Blog Entries: 3
Default Re: Hyper-Threading processor question

Hyper threading does not split a large program into smaller parts. That idea is simply known as threading, which is quite simple to implement on any multitasking operating system.

A simple (though perhaps pointless, it does give a good idea of whats going on) example on the Amiga would be to write a graphics converter program, where your program does little more than run a graphical user interface. When the user selects a file to convert, say an IFF to a Jpeg, the program starts another task passes it the graphics data and then lets that task do the number crunching. The main program is now free to allow the user to do something else. Once the converter task has finished it just has to signal the main program this fact and let the user decide what to do next.

In a normal (Amiga) CPU like the 68060, each task/program is given its turn to run (I believe, assuming both tasks are at the same priority, they would switch every 12th of a second (i.e. every 4 VBL)). This just means that each program runs a bit slower than if they were running on their own.

Modern CPUs have multiple execution units which can perform the same operations (actually sometimes, like in the 68060, there is a division of abilities, but this complicates matters)... like having two calculator on your desk, this allows the CPU to run two instructions (that do not depend upon the result of each other) at the same time. A decent compiler or a good human coder, will think carefully about the order of their program's instructions to allow the CPU to do this effectivly. This is known as optimisation.

Hyperthreading, is simply a special schedualer inside the CPU which makes the single CPU core look like 2 CPU cores. So that if there is a free execution unit, ie one that the CPU couldn't fill with the currently executing task (or if the currently executing task is wating for a memory operation to complete... these take forever in CPU terms), then another program will be given a chance to use that free resource, hense using time on the CPU which otherwise would be going to waste.

The problems are many. Firstly both tasks have to share the same infrastructure... Cache, buffers, memory bus etc... secondly it's rare for a good optimised program to leave much CPU resource free.. thirdly and most importantly it requires quite a bit of silicon space to implement... and only really offers a 5 to 10 percent performance gain.

It was only useful on the "brain-dead" NetBurst architecture, and is unlikely to return in the near future. Having 2 real cores on a single die offers much greater performance gains.
__________________
My iPhone Game: Puny Humans -
http://itunes.apple.com/gb/app/puny-...362230281?mt=8
bloodline is offline   Reply With Quote
Old 02-15-2007, 07:35 AM   #11
zyphoid
Technoid
Points: 7,002, Level: 55 Points: 7,002, Level: 55 Points: 7,002, Level: 55
Activity: 1% Activity: 1% Activity: 1%
 
Join Date: Aug 2006
Posts: 406
Default Re: Hyper-Threading processor question

bloodline, piru, and karlos have great facts but you all are missing the point!
__________________
A1200T Mid-Night 060@50mhz tv tuner,voodoo banshee,usb subway,mediator,Dual Multi partition 200Gig 2.5/3.5HD, Twin dual-layer lite-on dvd 52x dvd-rw, sx-32pro030@50mhz my favorite system what xbox came from til someone says otherwise,A500 Efika...
zyphoid is offline   Reply With Quote
Old 02-15-2007, 07:37 AM   #12
GW
Merely Curious
Points: 5,105, Level: 45 Points: 5,105, Level: 45 Points: 5,105, Level: 45
Activity: 0% Activity: 0% Activity: 0%
 
Join Date: Feb 2003
Posts: 11
Default Re: Hyper-Threading processor question

Quote:
bloodline wrote:

It was only useful on the "brain-dead" NetBurst architecture, and is unlikely to return in the near future. Having 2 real cores on a single die offers much greater performance gains.
Only useful on a brain-dead architecture like Netburst? That must mean Power5 is a brain-dead architecture too..

http://www-03.ibm.com/servers/eserver/iseries/perfmgmt/pdf/SMT.pdf

Quote:
The IBM® POWER4™ processor introduced two processors embedded in a single chip, sharing
a common L2 level cache to increase processing efficiency. The POWER5™ processor builds on
this topology with a significant enhancement called Simultaneous Multithreading (SMT), a
concept where multiple threads of execution can execute on the same processor at the same time.
GW is offline   Reply With Quote
Old 02-15-2007, 07:46 AM   #13
bloodline
Master Sock Abuser
Points: 38,902, Level: 100 Points: 38,902, Level: 100 Points: 38,902, Level: 100
Activity: 26% Activity: 26% Activity: 26%
 
bloodline's Avatar
 
Join Date: Mar 2002
Location: London, UK
Posts: 11,888
Blog Entries: 3
Default Re: Hyper-Threading processor question

Quote:
GW wrote:
Quote:
bloodline wrote:

It was only useful on the "brain-dead" NetBurst architecture, and is unlikely to return in the near future. Having 2 real cores on a single die offers much greater performance gains.
Only useful on a brain-dead architecture like Netburst? That must mean Power5 is a brain-dead architecture too..

The POWER5 is a server chip not a desktop chip. Server chips tend to have to handle lots of small simultanious tasks, rather than a couple of really heavy number crunchers...

The SPARC T1 is a good example of this idea taken to the limit
__________________
My iPhone Game: Puny Humans -
http://itunes.apple.com/gb/app/puny-...362230281?mt=8
bloodline is offline   Reply With Quote
Reply

Bookmarks

Tags
hyperthreading , processor , question

Thread Tools
Display Modes

Posting 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

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Hyper rocks! Hyper delivers! Happy new year Hyperion!!... A1260 General chat about Amiga topics 10 12-31-2007 05:33 PM
Processor question Vincent Alternative Operating Systems 7 05-15-2006 06:54 PM
Processor question temporary Amiga Hardware Issues and discussion 12 09-23-2005 04:50 AM
Mask Revision 1 Of The 68060 Processor Series Question CU_AMiGA Amiga Hardware Issues and discussion 12 03-07-2005 05:04 AM
Hyper- ROCKS TallAmigan Amiga OS -- Development 9 02-27-2003 04:56 PM