0

According to Intel (If I'm not wrong) the Hyper threading (HT) can: - up the performances up to 30%. - HT can make better use the CPU when there is one task which use the ALU unit and the other doing I/O (for example: one task use zip alg and the other task use to write data into the disk) - in that can the HT can be used.

So, If I have one core with HT, and I'm using 2 Simultaneously tasks which runs 2 zip algorithms, the HT will not be efficient here , because one task will be wait for other task to finish the work one the ALU unit ? (and in this case I need 2 cores, instead of one core with HT).

Did I understand what Intel means with HT ? Is it right ?

user3668129
  • 4,318
  • 6
  • 45
  • 87

1 Answers1

2

You didn't understand it right. When they talk about I/O, they mean writing to memory and reading from memory, not file I/O. When that zip algorithm reads the next input byte from RAM, that's I/O. And when it writes a decoded byte to RAM, that's I/O.

A hyperthreaded CPU has usually one unit reading instructions from memory, two units decoding and dispatching instructions, two sets of architected registers (that's the processor registers that your program sees), one set of rename registers, one set of schedulers, and one set of ALUs, where a non-hyperthreaded core would have one of each, and two non-hyperthreaded cores would have two of each.

gnasher729
  • 51,477
  • 5
  • 75
  • 98
  • ok, so when running (for example) 2 tasks and each task run a zip alg, the performance of 2 cores (without HT) vs one core with HT will be the same ? – user3668129 Jun 08 '14 at 16:49
  • No. Two cores have _every_ part of the processor duplicated. A single core with hyperthreading has only _some_ parts duplicated. For example, the ALUs are not duplicated. – gnasher729 Jun 08 '14 at 23:44
  • from wiki: "Intel claims up to a 30% performance improvement compared with an otherwise identical, non-simultaneous multithreading " – user3668129 Jun 09 '14 at 02:55