Apakah hyperthreading mengurangi kinerja inti tunggal
Apakah hyperthreading mengurangi kinerja inti tunggal?
Ini adalah pertanyaan yang sering muncul saat membahas manfaat dan kelemahan dari hiperthreading. Hyperthreading adalah teknologi yang memungkinkan inti fisik tunggal bertindak sebagai dua inti logis, secara efektif menggandakan jumlah utas yang dapat ditangani oleh prosesor. Namun, ada beberapa perdebatan tentang apakah hyperthreading benar -benar meningkatkan kinerja atau jika berpotensi menghalangi kinerja inti tunggal. Mari kita jelajahi topik ini lebih lanjut.
Pertama, penting untuk memahami cara kerja hyperthreading. Ketika satu inti adalah hyperthreaded, itu dibagi menjadi dua inti virtual, masing -masing mampu melaksanakan serangkaian instruksi mereka sendiri. Ini memungkinkan prosesor untuk menangani beberapa utas secara bersamaan, meningkatkan kinerja multitasking secara keseluruhan. Namun, ini tidak selalu berarti bahwa kinerja inti tunggal akan ditingkatkan.
Faktanya, beberapa berpendapat bahwa hyperthreading sebenarnya dapat mengurangi kinerja inti tunggal. Ini karena sumber daya inti fisik, seperti cache dan unit eksekusi, dibagi antara dua inti logis yang dibuat oleh hiperthreading. Ini dapat menyebabkan peningkatan pertengkaran untuk sumber daya ini, berpotensi memperlambat eksekusi utas individu.
Selain itu, hyperthreading mungkin tidak memberikan dorongan kinerja yang signifikan untuk aplikasi yang tidak dioptimalkan untuk memanfaatkan beberapa utas. Banyak game, misalnya, terutama berhadapan tunggal dan mungkin tidak melihat peningkatan nyata dari hyperthreading.
Namun, perlu dicatat bahwa dampak hyperthreading pada kinerja inti tunggal dapat bervariasi tergantung pada beban kerja tertentu dan arsitektur prosesor. Dalam beberapa kasus, hyperthreading sebenarnya dapat meningkatkan kinerja inti tunggal dengan memungkinkan prosesor untuk memanfaatkan sumber daya yang tersedia dengan lebih baik.
Tidak ada jawaban pasti untuk pertanyaan apakah hiperthreading mengurangi kinerja inti tunggal. Sebagian besar tergantung pada keadaan dan beban kerja tertentu. Beberapa pengguna dapat memilih untuk menonaktifkan hipertread dalam skenario tertentu di mana kinerja inti tunggal adalah prioritas, sementara yang lain mungkin lebih suka membiarkannya memungkinkan untuk memanfaatkan kemampuan multitasking yang meningkat.
Berikut adalah beberapa takeaways kunci:
- Hyperthreading adalah teknologi yang memungkinkan inti fisik tunggal bertindak sebagai dua inti logis.
- Hyperthreading dapat meningkatkan kinerja multitasking dengan memungkinkan prosesor menangani banyak utas secara bersamaan.
- Beberapa berpendapat bahwa hyperthreading berpotensi mengurangi kinerja inti tunggal dengan meningkatkan pertengkaran untuk sumber daya bersama.
- Hyperthreading mungkin tidak memberikan dorongan yang signifikan dalam kinerja untuk aplikasi yang tidak dioptimalkan untuk beberapa utas.
- Dampak hyperthreading pada kinerja inti tunggal dapat bervariasi tergantung pada beban kerja dan arsitektur prosesor.
- Tidak ada jawaban pasti apakah hiperthreading mengurangi kinerja inti tunggal, karena sebagian besar tergantung pada keadaan tertentu.
Berikut beberapa pertanyaan berdasarkan teks:
- Apa itu hyperthreading?
- Apakah hyperthreading meningkatkan kinerja multitasking?
- Dapat hyperthreading berpotensi mengurangi kinerja inti tunggal?
- Lakukan semua aplikasi mendapat manfaat dari hiperthreading?
- Bagaimana dampak hyperthreading pada kinerja inti tunggal bervariasi?
- Apakah ada jawaban yang pasti untuk apakah hiperthreading mengurangi kinerja inti tunggal?
- Faktor -faktor apa yang harus dipertimbangkan saat memutuskan apakah akan mengaktifkan atau menonaktifkan hyperthreading?
- Adalah game yang biasanya dioptimalkan untuk beberapa utas?
- Can Hyperthreading meningkatkan kinerja multitasking secara keseluruhan?
- Apa saja kelemahan potensial dari hiperthreading?
- Apakah ada konsensus tentang apakah hiperthreading bermanfaat atau merugikan kinerja inti tunggal?
- Dapat menonaktifkan hyperthreading meningkatkan kinerja inti tunggal?
- Dapat hyperthreading meningkatkan pemanfaatan sumber daya yang tersedia?
- Haruskah hyperthreading diaktifkan atau dinonaktifkan untuk bermain game?
- Apakah AMD CPU lebih rendah dari Intel CPU dalam hal kinerja hyperthreading?
- Apakah Hyperthreading memberikan keuntungan untuk bermain game?
Hyperthreading adalah teknologi yang memungkinkan inti fisik tunggal bertindak sebagai dua inti logis.
Ya, hyperthreading dapat meningkatkan kinerja multitasking dengan memungkinkan prosesor menangani banyak utas secara bersamaan.
Ya, beberapa berpendapat bahwa hiperthreading berpotensi mengurangi kinerja inti tunggal dengan meningkatkan pertengkaran untuk sumber daya bersama.
Tidak, Hyperthreading mungkin tidak memberikan dorongan kinerja yang signifikan untuk aplikasi yang tidak dioptimalkan untuk beberapa utas.
Dampak hyperthreading pada kinerja inti tunggal dapat bervariasi tergantung pada beban kerja dan arsitektur prosesor.
Tidak, tidak ada jawaban yang pasti karena sebagian besar tergantung pada keadaan tertentu.
Faktor -faktor seperti beban kerja spesifik dan prioritas yang diberikan untuk kinerja inti tunggal harus dipertimbangkan ketika memutuskan apakah akan mengaktifkan atau menonaktifkan hyperthreading.
Tidak, banyak game terutama utuh dan mungkin tidak melihat peningkatan nyata dari hiperthreading.
Ya, hyperthreading dapat meningkatkan kinerja multitasking secara keseluruhan dengan memungkinkan prosesor untuk menangani banyak utas secara bersamaan.
Beberapa kelemahan potensial dari hiperthreading termasuk peningkatan pertengkaran untuk sumber daya bersama dan potensi perlambatan eksekusi utas individu.
Tidak, tidak ada konsensus karena sebagian besar tergantung pada keadaan dan beban kerja tertentu.
Dalam beberapa kasus, menonaktifkan hyperthreading dapat meningkatkan kinerja inti tunggal dengan mengurangi pertengkaran untuk sumber daya bersama.
Ya, dalam beberapa kasus, hiperthreading dapat meningkatkan pemanfaatan sumber daya yang tersedia dengan memungkinkan prosesor untuk mengalokasikannya dengan lebih baik.
Itu tergantung pada permainan tertentu dan apakah dioptimalkan untuk beberapa utas. Beberapa permainan mungkin mendapat manfaat dari hipertreading, sementara yang lain mungkin tidak melihat peningkatan yang nyata.
Tidak ada jawaban pasti untuk pertanyaan ini karena kinerja AMD dan Intel CPU dapat bervariasi tergantung pada keadaan dan beban kerja tertentu.
Hyperthreading dapat memberikan keuntungan untuk bermain game dalam skenario tertentu di mana game dioptimalkan untuk beberapa utas dan dapat memanfaatkan peningkatan kemampuan multitasking.
Apakah hyperthreading mengurangi kinerja inti tunggal
Dengan menerima semua cookie, Anda menyetujui penggunaan cookie kami untuk mengirimkan dan memelihara layanan dan situs kami, meningkatkan kualitas reddit, mempersonalisasi konten dan iklan reddit, dan mengukur efektivitas iklan.
Apakah hyperthreading mengurangi kinerja inti tunggal
Ini tidak masuk akal sama sekali, pada dasarnya semua yang dilakukan di sini dapat ditangani melalui jendela atau bahkan unix itu sendiri.
Pertama: Hyperthreading dengan sendirinya merupakan peningkatan kinerja yang sangat besar, jadi mengapa Anda tidak bisa menonaktifkannya? Maksud saya jika judul memiliki masalah, Anda dapat menetapkan tidak hanya afinitas pemrosesan, tetapi afinitas inti juga melalui manajer tugas. Jika Anda memiliki konsep bagaimana cara kerja multithreading, Anda akan tahu bahwa mikroprosesor modern mampu menulis beberapa instruksi per siklus clock, dan sebagai tambahan, memanfaatkan beberapa utas dari proses yang sama.
Saya tidak melihat alasan untuk tujuan alat ini, semuanya dapat dilakukan di manajer tugas.
Selain itu, secara teoritis seharusnya tidak ada cara untuk meningkatkan kinerja tanpa secara langsung meningkatkan kecepatan pemrosesan chip, atau meningkatkan pemanfaatan (atau adaptasi) dari instruksi dalam chip prosesor itu sendiri.
Visualzzazione Di 16 – 30 Commentsi Su 48
6 Lug 2015, Ore 23:21
Messaggio Originale di Timdimmdrive:
Messaggio Originale di yumri:
bagaimana dan/atau mengapa hiperThreading membantu atau melukai game? Benar -benar sebagian besar game hanya menggunakan 1 ~ 4 core sekarang dan hyperthreading akan membuat pertunjukan inti ganda sebagai 4 core yang UM tergantung pada bagaimana menangani mungkin lebih baik mungkin lebih buruk tetapi dari sitrurasi elekronik itu tidak akan membantu apapun untuk mematikannya karena kemudian dibagi antara 2 core alih -alih 2 core yang menjalankan 4 benang . Hyperthreading turun melalui 1 utas inti run 2 bagaimana itu dijelaskan kepada saya ?
Bayangkan CPU Core adalah pekerja check-out yang ada di toko kelontong, menelepon bahan makanan Anda. Sekarang bayangkan dia memiliki 1 dari sabuk konveyor dengan 1 pelanggan, dan kasir menelepon pelanggan itu. Kasir mengambil 1 sepotong makanan, membunyikannya, lalu meraih 1 lagi. Pelanggan dan makanan mereka = game/program, dan kasir = inti CPU.
Sekarang bayangkan kasir yang sama, tetapi alih -alih 1 sabuk konveyor dengan 1 pelanggan, kasir memiliki 2 sabuk konveyor, masing -masing dengan pelanggan mereka sendiri. Jadi sekarang kasir dapat menelepon dua pelanggan secara bersamaan. Namun, kasir hanya bisa menelepon 1 sepotong makanan sekaligus. Jadi kasir mengambil 1 sepotong makanan dari pelanggan A, dan kemudian 1 potong dari pelanggan B, dan bagian lain dari pelanggan A, dll. Beginilah cara kerja hyperthreading (singkatnya). Hyperthread adalah sabuk konveyor kedua dengan pelanggan kedua.
Jadi sekarang bayangkan sekarang Anda harus membeli 100 keping makanan. Yang lebih cepat? 2 Sabuk Konveyor Terpisah, masing -masing pergi ke kasir mereka sendiri, atau 1 kasir dengan 2 sabuk pengiring?
Jawabannya adalah 2 sabuk konveyor, masing -masing pergi ke kasir mereka sendiri. Alias 2 CPU Core. Karena 1 kasir hanya dapat check-out 1 item sekaligus, terlepas dari 2 sabuk konveyor, sedangkan 2 kasir dapat melakukan dua kali pekerjaan sebagai 1.
Inilah sebabnya, jika Anda memiliki kemampuan untuk memilih, selalu minta permainan Anda berada di core CPU yang sebenarnya vs berada di Hyperthreads Virtual Processors.
Oke, saya mendapatkan anologi Anda, meskipun demikian, anologi itu berarti bahwa permainan secara inheren tidak berfungsi dengan baik pada AMD CPU setelah mereka dibuat menjadi modul? Karena modul membagi 2 sel pertama dari 2 sel terakhir untuk membuat 2 inti parsial di dalam 1 modul dari inti penuh ? Itu adalah hal yang sama dalam konsep dengan hyper threading Intel tidak hanya intel hyperthreading melakukannya pada satu baris alih -alih 2 baris sel sehingga bagaimana melakukannya pada 2 garis sel lebih baik atau lebih buruk daripada melakukannya pada 1 baris sel sel? atau maksud Anda AMD CPU semuanya lebih rendah dari semua CPU Intel ?
Saya mendapatkan ananolgy Anda dan ya jika itu tidak lain adalah elektronitas itu akan berlaku tetapi garis -garis sel melewati tegangan 1V biasanya dari satu sel ke sel lainnya sehingga bagian tentang tidak dapat memilikinya bersamaan dengan instruksi pada saat yang sama Intel melakukannya dengan menggunakan lini dan AMD melakukannya dengan menggunakan 2 baris dan memanggil setiap setengah dari 1 baris dengan demikian akan menggunakan inti Anda dengan tidak akan menggunakan core Anda dengan menggunakan semua lini dan memanggil setiap setengah dari 1 lini yang akan dilakukan dengan baik. Masuk akal pada tingkat pemikiran perangkat lunak ya tidak pada tingkat pemikiran perangkat keras adalah segalanya.
Jika itu bekerja dengan luar biasa, jelaskan kepada saya bagaimana dan mengapa saya tidak mengerti dan saya tidak akan membeli sampai saya mengerti.
6 Lug 2015, Ore 23:30
^ Saya tidak akan mengutip juga karena alasannya..
Tidak ada AMD FX yang tidak * terpecah * sel,
Chip AMD fx adalah basis modular ya, bagaimana mereka memiliki 2 inti fisik pra modular. Bagaimana core mereka berbagi beberapa aspek die, seperti FPU dll..
AMD FX Dosis Bahkan memiliki 8 inti fisik, 1 utas per inti..
Masalahnya dengan intel ht adalah dosis 2 utas per inti.. dan kedua utas harus berbagi semua aspek inti dan CPU. Itulah salah satu alasan mengapa AMD FX Out Preformes Intel HT, dalam multi threads, aplikasi multi core..
Core AMD FX yang cocok untuk berbagi FPU ECT dengan dalam modular meskipun mereka lengkap dikelompokkan oleh Intel dalam utas tunggal, preformensi. Ini benar -benar benar jika HT dinonaktifkan.. Anda dapat menonaktifkan inti dalam chip AMD FX agar sesuai dengan 1 inti per 1 modular dan kemudian tidak ada yang dibagikan di antara mereka excepct cache L3
Untuk AMD ini adalah salah satu alasan terbesar mengapa setengah coreboost lebih cepat daripada dorongan inti penuh.
Di CPU 8120 saya normal adalah 3.1GHz, inti penuh (8 core) adalah 3.4GHz dan setengah inti (4x core, 1 per modular) adalah 4.0GHz
Jika Anda menonaktifkan HT di Intel, Anda dapat oc chip lebih dari yang diaktifkan HT juga.
Ultima Modifica da Maddoggyca; 6 Lug 2015, Ore 23:36
7 Lug 2015, Ore 1:34
Saya tidak pernah memihak AMD “split” sel yang saya katakan bahwa AMD menggunakan satu baris untuk langkah 1 dan 2 kemudian baris lain untuk langkah 3 dan 4 sementara Intel menggunakan garis paduan silikon yang sama untuk langkah 1, 2, 3 dan 4 yang tidak memiliki loop punggung yang diaktifkan dan loop kembali adalah mengapa dan bagaimana modul AMD bekerja dan garis lurus adalah bagaimana cara kerja hyperthreading adalah cara kerja hyperthreading.
Masih tidak mengerti mengapa HT akan menurunkan probalby Preformance Game itu lebih banyak untuk dilakukan untuk lebih banyak core daripada yang dibutuhkan daripada tentang memilikinya pada inti yang sama dengan muatan elecrtic akan sama baiknya dengan atau tanpa hyperthreading aktif. Sama dengan inti AMD muatan elektroik dalam bagaimana mereka melakukan inti.
Juga seperti yang Anda katakan, preformansi inti tunggal lebih baik dengan intel bukan utas tunggal tetapi inti tunggal tidak ada yang tidak ada utas tunggal yang bukan intel dan tidak dan keduanya melakukan thread multple per siklus clock.
I am sorry that it does not make sense to me but if it is true then it is and whatever at higher speeds over that of 3GHz it stops mattering as no game sees any differnece of that speed at this time that is and if you can just turn that one option off ,i forget which one it was but it made my CPU always run at the overclocked speed and if you can do that then this program has no use as what it does is force the turbo to kick in and make it go faster that way it seems and turbo does not work well with hyperthreading.
7 Lug 2015, Ore 2:03
Hmm tidak ada AMD dan intel tidak melakukan multi -utas per siklus clock. hanya intel dengan dosis ht dosis 2 utas per siklus clock.. juga siklus clock .000000001.. Aka benar -benar cepat. *Ini adalah MHz, GHz masuk. Semakin cepat GHz semakin cepat siklus jam. Semakin cepat siklus, berarti lebih banyak benang masuk dan keluar dari CPU.. Alias data Anda menjadi lebih cepat, dan lebih banyak data dikalulasi dalam jumlah waktu yang sama maka CPU yang lebih lambat
Ini adalah diagram Simples terbaik dan paling untuk mengikuti penjelasan siklus clock, siklus utas dan intel HT .
Inti tunggal, utas tunggal = 1 siklus, utas mulai dan berakhir pada waktu yang sama siklus clock dimulai/berakhir
Inti tunggal, hyper thread = 1 siklus.. HT adalah saat 1 inti menjalankan 2 utas, satu dimulai pada pengemis siklus clock dan berakhir pada akhir siklus clock. Utas ke -2 mulai setengah jalan siklus jam dan berakhir setengah jalan melalui siklus berikutnya.. (mengulang)
Dosis intel ht tidak memulai 2 utas pada saat yang sama, atau dosisnya mulai 2 utas pada pengemis siklus clock, juga dosisnya selesai 2 utas pada saat yang sama. Di sana ditetapkan karena alasan solo bahwa satu utas secara teori tidak perlu menunggu utas lain untuk menyelesaikan menggunakan sisa CPU. Bagaimana pun ini masalahnya .. Kolisi utas terjadi setiap saat meskipun Anda secara pribadi tidak akan pernah melihat atau mengetahuinya, dan jarang dosisnya mempengaruhi PC atau OS dan Anda memiliki peluang 1: 1000000000000.000 untuk seluruh sistem di seluruh sistem.. tetapi dosis masih menyebabkan masalah preformensi yang tidak harus dihadapi oleh satu inti, operasi utas tunggal
Ini adalah salah satu alasan mengapa game dan aplikasi inti tunggal berjalan sedikit lebih cepat pada chip Intel yang telah dinonaktifkan HT. Tidak ada peluang utas harus menunggu yang lain untuk menyelesaikannya.
Adapun game yang diaktifkan multi -inti, lebih baik untuk membongkar mereka ke inti khusus yang menangani 1 utas per siklus untuk menghindari benang yang mencabut yang lain untuk menyelesaikan apa pun yang mungkin dilakukannya..
Ini terdengar semua redunent dan sedikit redikuliks ketika Anda berpikir tentang seberapa cepat siklus itu, dan seberapa cepat listrik/data berjalan melalui perangkat keras Anda. Tetapi orang -orang benar -benar peduli untuk mendapatkan kecepatan tercepat dari perangkat keras. Bahkan jika itu beberapa MilaseConds of Gain.
Ultima Modifica da Maddoggyca; 7 Lug 2015, Ore 2:23
7 Lug 2015, Ore 3:55
ok saya pikir Anda mendapatkan apa yang salah threading hyper. Hyper Threading memungkinkan instruksi multple dilakukan dengan inti yang sama pada waktu yang sama jika kedua instruksi yang pretain ke utas yang sama tidak berani. ya 1 siklus clock sangat cepat sekitar 1 nanosecond atau lebih untuk 1 siklus clock tetapi instruksi multple dapat dilakukan dalam 1 siklus clock sehingga bagian dari bagaimana intel lebih baik daripada AMD dalam preformansi inti tunggal meskipun saya tidak yakin mana yang lebih baik pada preformansi multi -inti multi -inti. if a program is the only program on a core then yes it will be able to use the core whenever it needs to use that core and if it is an actual core all the better so not saying that using this old old trick from 2003 is not good anymore i am just saying i do not see any benefit from using it anymore when the OS and the CPU itself already do it for you as the hypothical differnee is minimal at best depending on the speed of the core(s) of course.
7 Lug 2015, Ore 4:08
Inilah gambaran karya dalam CPU yang sebenarnya dan mengapa saya mengatakan apa yang saya katakan
http: // www.cbtricks.com/radio/presiden/george/grafik/george_main_sch.gif
Gambar Anda terlalu disederhanakan untuk pengguna yang tidak memahami rekayasa elektronik dan membutuhkannya ke dalam istilah sederhana tetapi apa yang Anda katakan tidak masuk akal karena Anda dapat menjalankan instruksi mulple per siklus clock di (George) CPU itu bukan CPU yang dibuat untuk menjadi sangat cepat dan intel dan AMD membuat probalby mereka sangat berbeda membentuk satu tetapi itu adalah CPU yang sederhana dan di dalamnya menjadi capam yang sangat berbeda dari itu, tetapi itu adalah CPU yang sederhana
Logika Anda bekerja jika itu berjalan dalam lingkaran lurus ya tetapi ketika tidak masuk dalam siklus atau pola yang ditentukan sama sekali tetapi metode yang ditentukan oleh jumlah atom yang tidak diinonisasi di dalam resistor pada hal -hal nanodondasi yang bekerja berbeda dan hipertreading menggunakan bentuk preformansi meningkatkan bentuk preformansi meningkatkan bentuk preformansi meningkatkan bentuk preformansi meningkatkan bentuk preformansi meningkatkan bentuk preformansi meningkatkan bentuk sebelumnya meningkatkan . Ya Jika Anda menjalankan game inti ganda dan inti kedua menyelesaikan instruksi sebelum inti pertama maka kemungkinan besar Anda akan mendapatkan layar biru karena inti kedua akan berada di baris yang sama dengan inti pertama tetapi di belakangnya dan dibuat hanya dengan kecepatan yang sama tidak lebih cepat dan tidak lebih lambat tetapi kecepatan yang sama tetapi kecepatan yang sama yang sama . Morden CPU dapat memiliki inti mereka dengan kecepatan diffenret kecuali jika tidak ditetapkan dalam BIOS apa yang program ini lakukan adalah mengirim pesan untuk menjalankan semua inti pada kecepatan maksimal yang menghilangkan “problrem” dan meningkatkan kecepatan ke kecepatan maksimum / kecepatan yang terdaftar karena kebanyakan CPU tidak berjalan pada 3GH itu atau kecepatan stok apa pun yang dipasarkan di sekitar 1.2GHz ke 1.8GHz untuk melestarikan kehidupan CPU dan untuk menghemat penggunaan energi.
Apa yang Anda katakan di bagian terakhir “bahkan jika itu adalah beberapa milisconds gain” baik jika menjalankan CPU gen baru atau terakhir kecepatan stoknya 100% akan menjadi 3.0GHz ke 3.2 GHz Membuat Perbedaan Beberapa nanodetik gain paling banyak. 12 nanaoseconds yang merupakan kasus terbaik untuk berapa banyak waktu program ini akan menghemat Anda dengan berjalan pada CPU generasi CPU terakhir atau yang sebelum dengan kecepatan stok tidak terdeteksi oleh otak manusia yang dibutuhkan otak kita sekitar 150 juta disonik hingga 12 milidetik untuk mempertahankan apa pun sama sekali dengan apa yang masih cukup cepat tetapi tidak secepat 12 milidetik untuk mempertahankan apa pun yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanosec untuk semua yang masih cukup cepat tetapi tidak secepat 12 nanoSEC untuk mempertahankan apa pun yang cukup cepat tetapi tidak secepat 12 nanosec untuk mempertahankan apa pun yang cukup cepat tetapi tidak secepat 12 nanosec.
Program ini dibuat untuk perangkat keras kelas bawah dan karenanya tidak untuk saya mungkin untuk Anda tetapi tidak untuk saya.
7 Lug 2015, Ore 7:07
Messaggio Originale di Timdimmdrive:
Jawabannya sangat mudah:
Hyperthreading bukanlah CPU nyata. Sebaliknya, ini adalah CPU tervirtualisasi. Jika Anda memainkan permainan yang hanya dapat menggunakan 2 utas CPU sekaligus, maka Anda akan mendapatkan kinerja yang jauh lebih baik memberikan 2 inti CPU nyata, versus 1 inti CPU nyata dan 1 inti CPU virtual. Jadi apa yang dilakukan cpucores adalah memastikan bahwa permainan tidak menggunakan hyperthreading, dan sebaliknya hanya menggunakan core yang sebenarnya. Catatan: Ini adalah opsi dalam perangkat lunak. Anda dapat mengaktifkan/menonaktifkannya secara per game. Berikut ini adalah bacaan yang bagus tentang apa hyperthreading itu: https: // en.Wikipedia.org/wiki/hyper-threading
“Semuanya bisa dilakukan di manajer tugas. “
Ini tidak benar. Beberapa video dan deskripsi tentang cpucores apa yang akan menjelaskannya lebih lanjut. Misalnya, itu tidak hanya menyentuh permainan yang sebenarnya. Ini mengidentifikasi dan memodifikasi bagaimana proses OS Anda berjalan, proses non-game Anda, gim Anda sendiri, dan membungkus semuanya menjadi program yang sangat mudah digunakan oleh uap.
“Secara teoritis tidak ada cara untuk meningkatkan kinerja tanpa secara langsung meningkatkan kecepatan pemrosesan chip”
Ini tidak benar. Cara termudah untuk memahaminya adalah ini: Mana yang lebih baik untuk permainan? 70% CPU dari inti, atau CPU 100% dari inti? Inilah tepatnya apa yang akan dilakukan cpucores – ini akan membersihkan proses apa yang dan kemudian menghadirkan inti yang bersih dan tidak terpakai hampir 100% untuk permainan uap Anda. (Di antara fitur cpucores lainnya).
Saya memiliki beberapa video cpucores yang digunakan oleh beberapa game yang sebenarnya. Saya mendorong Anda untuk memeriksa ini: http: // steamcommunity.com/app/384300/diskusi/
Saya harap itu membantu Anda memahami banyak hal.
Tim, tolong uraikan beberapa hal untuk saya. Bagaimana tepatnya cpucores memungkinkan permainan yang berjalan pada 70% core (saya jujur belum pernah melihat permainan yang dibangun dengan benar yang tidak menggunakan inti 100%) untuk berjalan pada inti 100%? Anda tidak dapat memaksa program untuk menggunakan lebih banyak beban CPU. Saya tidak percaya bahwa penutupan proses memiliki efek pada kinerja permainan (saya telah menguji teori itu berkali -kali di masa lalu). Juga diperhatikan bahwa 95% dari proses tambahan yang berjalan berdekatan dengan permainan Anda diperlukan oleh RAN oleh Windows dan proses tambahan apa pun diperlukan, seperti manajer audio, program khusus untuk pengemudi, dll. Contoh lain: Ketika saya meluncurkan GTA V, saya membutuhkan proses klub sosial untuk tetap aktif untuk memainkan permainan. Tetapi satu -satunya proses “tambahan” yang sedang berjalan saat saya game adalah manajer unduhan, foobar2000, dan konsol switching perangkat keras MSI. Saya menguji teori ini saat menulis antara menulis ini dan saya sama sekali tidak memperhatikan perbedaan kinerja atau kehalusan permainan saya setelah menutup proses tambahan itu.
Namun saya akan setuju, hiper-threading memang memiliki kecenderungan untuk membuat hal-hal tidak stabil. Saya tidak setuju bahwa hiper-threading akan menurunkan kinerja apa pun. Semua hiper-threading dimaksudkan adalah untuk mengelola pemuatan prosesor secara efisien. Beberapa aplikasi yang sangat memuat seperti editor foto/video dan video game cocok untuk dijalankan dengan hiper-threading diaktifkan dan menonaktifkannya dengan alasan apa pun dapat mengakibatkan lebih banyak masalah daripada perbaikannya.
Saya juga membaca di suatu tempat (saya tidak memiliki pengalaman pribadi tentang ini) yang melumpuhkan hiper-threading akan menyebabkan permainan dengan pemuatan tekstur berat (seperti TES: Skyrim) untuk menerima pukulan besar dalam waktu pemuatan.
Tim, saya adalah pengguna PC yang berpengalaman. Pengalaman saya melebihi 10+ tahun tidak menghitung jam penelitian tanpa akhir tentang topik seperti ini. Saya ingin Anda memberi tahu saya sesuatu yang tidak saya ketahui.
Ultima Modifica da Ketonasarus; 7 Lug 2015, Ore 7:20
7 Lug 2015, Ore 13:01
secara finnis seseorang yang mendapatkannya tentang hiperthreading . Juga di tautan Anda di atas tampaknya jika CPU cukup cepat seperti 3GHz atau lebih cepat maka menonaktifkan hyperthreading tidak akan memberikan peningkatan kinerja sama sekali kecuali Anda juga overclocking tetapi program ini bukan untuk overclocking.
Dan ya saya mengerti maksud Anda tetapi dari bagaimana saya memahaminya dengan memaksa TurboBoost berlaku yang pada dasarnya merupakan overclock sendiri untuk meledaknya kecepatan sekarang dan kemudian karena Anda mengatakan jika tidak dapat ulitisasi 100% dari inti maka bahkan jika Anda menggunakan program ini tidak akan tidak akan akan tidak, itu tidak akan akan tidak, itu tidak akan akan tidak, itu tidak akan akan tidak, itu tidak akan akan tidak, itu tidak akan akan tidak ada program ini, maka jika Anda menggunakan program ini, tidak akan ada program ini . Namun, dalam hal itu Anda dapat membuat Windows berpikir dan mengatakan bahwa itu adalah dan menipu CPU untuk menggunakan fitur tambahan untuk membuat dirinya lebih cepat dari kecepatan stok dan/atau dengan kecepatan stok karena ulsization naik sehingga peningkatan kecepatan yang dipikirkan bahwa program ini memberi mereka.
Ultima Modifica da Yumri; 7 Lug 2015, Ore 13:05
8 Lug 2015, Ore 11:41
Messaggio Originale di GS-R:
Semua hiper-threading dimaksudkan adalah untuk mengelola pemuatan prosesor secara efisien. Beberapa aplikasi yang sangat memuat seperti editor foto/video dan video game cocok untuk dijalankan dengan hiper-threading diaktifkan dan menonaktifkannya dengan alasan apa pun dapat mengakibatkan lebih banyak masalah daripada perbaikannya.
Ya. Itu adalah “semua yang dimaksudkan untuk dilakukan”, tetapi saya mendapatkan kecurigaan menyelinap Anda salah menafsirkan apa ‘pemuatan’ yang sebenarnya di sini dan bagaimana cara kerjanya atau tidak berhasil.
Apa yang dilakukan Hyper-threading adalah membagi inti fisik menjadi dua inti logis. Kedua inti logis ini memiliki keadaan eksekusi terpisah sehingga mereka Bisa Jalankan tugas secara paralel, tetapi mereka harus berbagi dan bersaing untuk sumber daya seperti bus sistem atau cache memori CPU sehingga mereka tidak bisa selalu Jalankan secara paralel.
Itu sangat penting untuk dipahami. Anda harus menjalankan perangkat lunak yang ditulis dengan cara tertentu untuk memanfaatkan trik penjadwalan yang diaktifkan Hyper-threading tanpa salah satu inti logis dalam pasangan yang menghalangi yang lain.
Contoh paling sederhana adalah satu utas yang menjalankan pekerjaan komputasi berat pada satu inti logis, sedangkan inti logis saudaranya adalah membilas data kembali ke RAM utama dan menarik data baru untuk perhitungan lebih lanjut.
Jenis perangkat lunak apa yang sebagian besar beroperasi dengan cara itu? Perangkat lunak yang melakukan perhitungan pada aliran data. Contoh kanonik dari jenis itu adalah pengkodean audio dan video atau perangkat lunak decoding.
Dalam praktiknya sebagian besar perangkat lunak tidak cukup disjar untuk memungkinkan dua core logis bekerja dengan cara yang sepenuhnya terputus -putus. Akan ada tabrakan. Banyak dan banyak dari mereka, lebih dalam satu detik dari yang dapat Anda andalkan di tangan kolektif penonton di film yang penuh sesak.
Namun, beberapa periode singkat operasi paralel bebas tabrakan, disjoint, masih lebih cepat daripada tidak memiliki operasi paralel sama sekali. Maka menjalankan benang mulitple dengan hiper-threading masih lebih cepat daripada menjalankan hanya satu utas pada satu waktu tanpa hiper-threading, di mana penjadwal OS harus ikut bermain dan Anda bisa membayar penalti penuh konteks switching konteks.
Jadi bagaimana hal itu memengaruhi permainan?
Dengan baik. itu tergantung pada bagian terbesar pada berapa banyak inti fisik yang tersedia CPU Anda dan berapa banyak utas simultan yang akan diteluskan oleh permainan Anda.
Permainan lama biasanya satu utamanya dan begitu juga banyak game indie dari memulai pengembang yang belum memiliki pemahaman yang baik tentang multi-threading (atau membangun sesuatu yang cukup ringan sehingga tidak membutuhkan multi-threading sama sekali). Untuk mendapatkan kinerja terbanyak dari permainan seperti itu, Anda ingin menjalankan utas tunggal game di salah satu prosesor logis dan menjaga semuanya dari yang lain sebanyak mungkin. Pastikan bahwa satu prosesor logis tidak pernah diblokir oleh apa pun yang mungkin ingin dilakukan orang lain.
Untuk game multi-threaded dan sistem multi-core, prinsip yang sama berlaku: Idealnya Anda ingin setiap utas aktif dalam game untuk berjalan pada satu prosesor logis dan menjaga saudara perempuannya bebas dari aktivitas sehingga tidak dapat memblokir yang pertama.
Di mana ia menjadi menarik adalah ketika Anda memiliki lebih sedikit inti fisik daripada permainan memiliki utas.
Dalam kasus ini, ini bisa sangat menguntungkan untuk dijalankan dengan hyper threading diaktifkan dan kedua inti logis dipasangkan di bawah inti fisik di bawah beban penuh. Meskipun prosesor logis dapat bertabrakan sesekali dan memperlambat satu sama lain, mereka umumnya juga akan memiliki periode yang berjalan secara paralel penuh, dan secara keseluruhan akan berkinerja lebih baik daripada OS yang harus menjadwalkan dua utas pada inti yang sama dan menjalani biaya penuh pengalihan konteks konteks.
Manfaat yang tepat masih akan bervariasi berdasarkan permainan: itu tergantung pada seberapa baik masing -masing utas tetap keluar dari jalan satu sama lain. Itu juga akan bervariasi dengan yang khusus generasi CPU yang Anda gunakan. Intel menjadi lebih baik dan lebih baik dalam melakukan optimisasi dan trik penjadwalan dengan setiap generasi baru CPU dan I3 atau i7 modern akan mengalami lebih sedikit tabrakan yang menjalankan perangkat lunak yang sama daripada generasi yang lebih tua dari i3 atau i7.
Game sebelumnya
Itu memanfaatkan multi-threading biasanya hanya menggunakan dua utas bersamaan, karena CPU yang lebih tua umumnya hanya memiliki dua core fisik untuk disisihkan. Bahkan saat menjalankan game-game ini pada i3, jika hiper-threading diaktifkan (menciptakan empat inti logis dari dua inti fisiknya), kemungkinan besar akan mengurangi kinerja karena tabrakan. Kecuali jika Anda secara eksplisit menjadwalkan kedua utas tersebut untuk berjalan pada inti fisik yang terpisah. Sebagian besar game lama tidak melakukan ini, karena OS Windows tidak memiliki cara untuk membedakan inti logis mana yang dipasangkan sampai Windows 7. Di situlah perangkat lunak seperti cpucores dapat memaksanya untuk Anda.
Game modern
Biasanya gunakan empat core. Alasannya sedikit lebih bervariasi. Bisa jadi karena pengembang mesin game tidak dapat mengelola perpecahan yang lebih granular atau karena konsol game rnodern hanya memiliki empat core yang tersedia dan gim ini merupakan rilis multi-platform.
Untuk i3 yang menjalankan game -game itu, biasanya a Bagus ide untuk mengaktifkan hiper-threading dan menjaga keempat core logis di bawah beban penuh sehingga Anda akan mencapai jumlah paralelisasi maksimum untuk sistem itu. Sedangkan untuk i7 (empat inti fisik, delapan inti logis), biasanya buruk untuk memungkinkan hiper-threading kecuali Anda mengisolasi benang pada inti fisik yang terpisah.
Permainan modern yang ditulis di mesin modern juga biasanya tahu cara menanyakan inti apa yang logis dan mana yang dipasangkan bersama dan akan melakukannya saat dijalankan pada OS Windows modern yang dapat melaporkan informasi semacam itu. (Yaitu: windows 7 dan lebih tinggi.) IIRC Unreal Engine 3 memiliki jenis teknologi ini.
Saat berhadapan dengan permainan yang ditulis pada mesin seperti itu, tidak masuk akal untuk ‘menonaktifkan hiper-threading’ (baca; isolasi permainan ke prosesor logis yang terputus.
Apakah hyperthreading mengurangi kinerja inti tunggal
Reddit dan mitranya menggunakan cookie dan teknologi serupa untuk memberi Anda pengalaman yang lebih baik.
Dengan menerima semua cookie, Anda menyetujui penggunaan cookie kami untuk mengirimkan dan memelihara layanan dan situs kami, meningkatkan kualitas reddit, mempersonalisasi konten dan iklan reddit, dan mengukur efektivitas iklan.
Dengan menolak cookie yang tidak penting, Reddit masih dapat menggunakan cookie tertentu untuk memastikan fungsionalitas yang tepat dari platform kami.
Untuk informasi lebih lanjut, silakan lihat pemberitahuan cookie kami dan kebijakan privasi kami .
[Diselesaikan] Apakah hiperthreading mempengaruhi kinerja?
Anda menggunakan browser yang ketinggalan zaman. Ini mungkin tidak menampilkan ini atau situs web lain dengan benar.
Anda harus meningkatkan atau menggunakan browser alternatif.
Mangasoy
8 Nov 2021 61 2 35
Teman saya bertanya kepada saya, mana yang lebih baik antara i5 4690 dan i7 3770. i7 memiliki hyperthreading sementara i5 tidak. Begitu juga i5 lebih buruk dari i7?
Dia ingin membangun PC gaming yang murah, dan PC ini akan diberi hadiah sebagai hadiah ulang tahun untuk saudara teman saya, jadi saya harap jawabannya akan membantu
Kanewolf
Saya dan teman saya sadar akan perbedaan soket, kami hanya ingin tahu apakah hyper threading akan membantu dalam kinerja.
Untuk sebagian besar perangkat lunak, ya. Perangkat lunak yang ditulis untuk sepenuhnya memanfaatkan CPU fisik dapat memperoleh manfaat dari memiliki hyperthreading dinonaktifkan. Perangkat lunak komersial tidak ditulis dengan cara ini. Mengapa? Karena perangkat lunak komersial harus berjalan pada lusinan CPU yang berbeda. Jika Anda menulis perangkat lunak khusus untuk YouTube, misalnya, Anda dapat mengoptimalkannya untuk CPU tertentu. YouTube akan memiliki ribuan perangkat keras yang sama persis. Dengan mengoptimalkan perangkat keras itu, dan kemudian membandingkan Anda dapat menentukan apakah hyperThreading on atau off memiliki kinerja yang lebih baik. Saya telah menjadi insinyur pada sistem di mana langkah pengaturan dasar.
Lutfij
Titan
Moderator
7 Okt 2009 49.405 3.748 153.390
Jenis game apa yang dia inginkan untuk memajaki sistem?
Drea.Drechsler
Juara
16 Okt 2017 9.449 2.474 52.290
Seberapa besar pengaruh kinerja mungkin bisa diperdebatkan dan bersyarat tetapi semuanya sama, ya itu.
Johnbonhamsghost
Mulia
14 Jan 2016 6.970 1.078 49.190
Apakah hiper-threading mempengaruhi kinerja?
Semua tergantung pada perangkat lunak spesifik yang terlibat.
Beberapa memanfaatkan hiper-threading, beberapa inti CPU yang lebih berdedikasi, beberapa hanya dari inti tunggal.
berapa harga yang akan mereka bayar untuk CPU gen yang lama atau ke -4 ini?
Dia ingin membangun
Jenis percakapan ini selalu lebih mudah dengan pembeli/pembangun yang sebenarnya.
Mintalah mereka melakukan kontak sendiri melalui utas ini atau dengan membuat yang baru.
Mangasoy
8 Nov 2021 61 2 35
Jenis game apa yang dia inginkan untuk memajaki sistem?
Game seperti Minecraft, GTA V, CS Go, Game Jenis Itu
Mangasoy
8 Nov 2021 61 2 35
Semua tergantung pada perangkat lunak spesifik yang terlibat.
Beberapa memanfaatkan hiper-threading, beberapa inti CPU yang lebih berdedikasi, beberapa hanya dari inti tunggal.
berapa harga yang akan mereka bayar untuk CPU gen yang lama atau ke -4 ini?
Jenis percakapan ini selalu lebih mudah dengan pembeli/pembangun yang sebenarnya.
Mintalah mereka melakukan kontak sendiri melalui utas ini atau dengan membuat yang baru.
Keduanya adalah CPU bekas sekitar 20 dolar, i5 adalah 21 dolar dan i7 adalah 24 dolar di toko komputer lokal
Johnbonhamsghost
Mulia
14 Jan 2016 6.970 1.078 49.190
i5 adalah 21 dolar dan i7 adalah 24
beli keduanya.
Mangasoy
8 Nov 2021 61 2 35
beli keduanya.
mana yang harus dia gunakan di pc?
Dan saya lupa menyebutkan, dia mencari CPU untuk dipasangkan dengan GTX 950 lamanya
Nighthawk117
Terhormat
27 Sep 2021 2.029 633 10.540
Teman saya bertanya kepada saya, mana yang lebih baik antara i5 4690 dan i7 3770. i7 memiliki hyperthreading sementara i5 tidak. Begitu juga i5 lebih buruk dari i7?
Dia ingin membangun PC gaming yang murah, dan PC ini akan diberi hadiah sebagai hadiah ulang tahun untuk saudara teman saya, jadi saya harap jawabannya akan membantu
Hyper Threading membuat perbedaan yang signifikan di sebagian besar game modern serta menguntungkan multi -penugasan. 3770 adalah CPU yang lebih baik, tapi harap dicatat mereka tidak menggunakan soket yang sama.
Mangasoy
8 Nov 2021 61 2 35
Hyper Threading membuat perbedaan yang signifikan di sebagian besar game modern serta menguntungkan multi -penugasan. 3770 adalah CPU yang lebih baik, tapi harap dicatat mereka tidak menggunakan soket yang sama.
Saya dan teman saya sadar akan perbedaan soket, kami hanya ingin tahu apakah hyper threading akan membantu dalam kinerja.
Nighthawk117
Terhormat
27 Sep 2021 2.029 633 10.540
Saya dan teman saya sadar akan perbedaan soket, kami hanya ingin tahu apakah hyper threading akan membantu dalam kinerja.
Itu tergantung pada perangkat lunak tetapi dari pengalaman sebagai aturan umum, saya selalu memilih chip yang berulir hiper. Perbedaan inti tunggal kecil, hyper threading akan memberikan pengalaman PC yang lebih baik dan akan membuat gameplay yang lebih halus di game modern. Jika Anda ingin bermain Battlefield V misalnya, 3770 adalah chip yang lebih baik untuk itu karena akan menggunakan semua 8 utas. Beberapa game ini tidak terlalu halus pada chip 4c/4t yang lebih lama.
Kanewolf
Titan
Moderator
29 Mei 2013 35.821 2.774 153.790
Saya dan teman saya sadar akan perbedaan soket, kami hanya ingin tahu apakah hyper threading akan membantu dalam kinerja.
Untuk sebagian besar perangkat lunak, ya. Perangkat lunak yang ditulis untuk sepenuhnya memanfaatkan CPU fisik dapat memperoleh manfaat dari memiliki hyperthreading dinonaktifkan. Perangkat lunak komersial tidak ditulis dengan cara ini. Mengapa? Karena perangkat lunak komersial harus berjalan pada lusinan CPU yang berbeda. Jika Anda menulis perangkat lunak khusus untuk YouTube, misalnya, Anda dapat mengoptimalkannya untuk CPU tertentu. YouTube akan memiliki ribuan perangkat keras yang sama persis. Dengan mengoptimalkan perangkat keras itu, dan kemudian membandingkan Anda dapat menentukan apakah hyperThreading on atau off memiliki kinerja yang lebih baik. Saya telah menjadi insinyur pada sistem di mana langkah pengaturan dasar adalah menonaktifkan hyperthreading di BIOS.
Jika Anda memiliki perangkat lunak spesifik yang harus dilakukan secara maksimal, maka Anda membandingkannya dengan baik dan berjalan dengan kinerja terbaik.
Apakah hiper-threading memperlambat kedua utas pada inti?
Ini mungkin sudah dijawab di utas lain tapi tetap saja ini dia. Misalkan saya memiliki prosesor 4 inti dengan 8 utas hyper threading. Mari kita ambil Intel I7-4770K sebagai contoh. Apakah fakta bahwa ada dua utas yang berjalan secara bersamaan pada satu inti lambat satu atau kedua utas dibandingkan dengan hanya memiliki satu utas yang berjalan pada satu inti tunggal. Saya berbicara tentang throughput bersih dari satu utas, bukan throughput lebar sistem. Tampaknya bagi saya bahwa jika prosesor berjalan dalam mode hiper-threading, bahwa ia perlu menghabiskan banyak waktu mengelola sumber daya bersama seperti cache, unit eksekusi, pipa, dll. Dengan kata lain, tampaknya “kinerja per-thread” akan kurang dari pada CPU dengan 4 core dan 4 utas daripada pada CPU dengan 4 core dan 8 utas. Tolong beri tahu, jelaskan, dan rumit.
Lebih banyak pilihan
redleader
Ars Legatus Legionis
Tergantung pada bagaimana diterapkan dan apa yang sebenarnya dilakukan utas (e.G. Apakah mereka memperebutkan cache dengan mengusir ingatan satu sama lain atau semacamnya). Tapi secara umum, tidak. Hal -hal seperti cache dan semacamnya tidak benar -benar “dikelola”, dari sudut pandang perangkat keras; Nilai memori adalah nilai memori di mana pun asalnya. Untuk instruksi dalam pipa, Anda harus melacak set register mana yang dimaksud setiap instruksi (karena setiap utas akan memiliki sendiri) tetapi pada prosesor x86 modern Anda harus melakukannya karena Anda akan tetap memiliki banyak salinan dari daftar utas karena eksekusi yang tidak ada dan mendaftarkan ganti nama untuk mengganti nama ganti nama.
Hal yang menarik tentang SMT adalah seberapa alami itu sesuai dengan prosesor yang luas dan superscalar yang sudah harus dilakukan.
Lebih banyak pilihan
Tom Dunkerton
Ars praefectus
Terima kasih Redleader. Saya tidak yakin mengapa, tetapi saya hanya berpikir inti empat tanpa hiper-threading akan lebih cepat per utas daripada inti ganda dengan hiper-threading. Apa yang saya lewatkan?
Lebih banyak pilihan
Breze
Ars praefectus
Satu -satunya kasus yang saya temui di mana hyperthreading secara terukur menurunkan kinerja adalah matematika numerik. Jika Anda membuat data yang terorganisir dengan baik, Anda mungkin dapat membuat inti sibuk. Dan jika Anda bekerja dengan banyak, Anda bisa menjadi terlalu besar untuk cache. Jadi, Anda ingin menyebarkan perhitungan Anda di seluruh inti sehingga Anda mendapatkan cache semua orang (sementara pada saat yang sama, meminimalkan komunikasi. itu adalah seni!). Secara umum Anda memiliki setengah bandwidth untuk ‘apa pun’ per inti jika Anda memiliki hyperthread, tetapi saya tidak yakin bahwa banyak orang menjalankan kode yang terikat bandwidth sering.
Saya pikir apa yang Anda lewatkan adalah bahwa inti sangat cepat sehingga mereka hampir selalu menunggu data, kecuali kode Anda disesuaikan dengan sangat hati -hati. Ini adalah masalah latensi, Anda mungkin juga memiliki utas lain yang mencari tahu apa yang akan diminta saat yang pertama menunggu.
Yang mengatakan, Anda pada dasarnya benar bahwa 4 inti nyata lebih cepat dari 2 HYPERAL/2 HYPER. Hanya saja 2 nyata/2 hiper lebih cepat dari 2 nyata sendiri, semua hal lain menjadi sama.
Saya kira juga, karena hyperthreads berbagi perangkat keras, mereka dapat berbagi data melalui cache. Jadi saya kira jika Anda memiliki dua utas dengan banyak komunikasi mereka bisa lebih bahagia sekali. Saya tidak yakin cara kerjanya dalam praktik. Sepertinya itu akan menjadi kombinasi aneh dari tuning yang baik dan buruk (jika ada komunikasi yang cukup untuk ini menjadi baik, mereka mungkin mereka tidak boleh dua utas kurasa?)
Sunting: Pedoman yang samar -samar ingat melihat ada di sekitarnya adalah, memegang jumlah inti nyata yang konstan, hiperthreading baik untuk sekitar 30% dan mengubah kinerja tambahan. Bukan 100%.
Lebih banyak pilihan
redleader
Ars Legatus Legionis
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29436487#P29436487: KLBS68DB mengatakan:
Tom Dunkerton [/url] “: KLBS68DB] Saya tidak yakin mengapa, tapi saya hanya berpikir empat inti tanpa hiper-threading akan lebih cepat per utas daripada inti ganda dengan hiper-threading. Apa yang saya lewatkan?
Dugaan saya adalah bahwa Anda tidak memiliki pemahaman yang baik tentang cara kerja komputer. ARS Technica memiliki sejumlah artikel yang sangat bagus tentang topik ini sekitar sepuluh tahun yang lalu. Mungkin layak untuk menggali mereka.
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29438331#P29438331: KLBS68DB mengatakan:
Breze [/url] “: klbs68db]
Yang mengatakan, Anda pada dasarnya benar bahwa 4 inti nyata lebih cepat dari 2 HYPERAL/2 HYPER. Hanya saja 2 nyata/2 hiper lebih cepat dari 2 nyata sendiri, semua hal lain menjadi sama.
Itu bukan “2 nyata/2hyper”. Anda masih memiliki persis 2 core, hanya saja masing -masing dapat menjalankan 2 utas sekaligus. Tak satu pun dari mereka yang lebih “nyata” dari yang lain.
Lebih banyak pilihan
kontinum
Ars Legatus Legionis
Moderator
Kami baru saja berdiskusi tentang ini, mungkin membantu?
Lebih banyak pilihan
Tom Dunkerton
Ars praefectus
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29439557#P2943957: 1CD9UD67 mengatakan:
Continuum [/url] “: 1CD9UD67] Kami baru saja berdiskusi tentang ini, mungkin membantu?
Lebih banyak pilihan
Breze
Ars praefectus
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29439055#p29439055: 172mk6gh mengatakan:
redleader [/url] “: 172mk6gh]
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29436487#p29436487: 172mk6gh berkata:
Tom Dunkerton [/url] “: 172mk6gh] Saya tidak yakin mengapa, tapi saya hanya berpikir inti empat tanpa hiper-threading akan lebih cepat per utas daripada inti ganda dengan hiper-threading. Apa yang saya lewatkan?
Dugaan saya adalah bahwa Anda tidak memiliki pemahaman yang baik tentang cara kerja komputer. ARS Technica memiliki sejumlah artikel yang sangat bagus tentang topik ini sekitar sepuluh tahun yang lalu. Mungkin layak untuk menggali mereka.
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29438331#p29438331: 172mk6gh mengatakan:
Breze [/url] “: 172mk6gh]
Yang mengatakan, Anda pada dasarnya benar bahwa 4 inti nyata lebih cepat dari 2 HYPERAL/2 HYPER. Hanya saja 2 nyata/2 hiper lebih cepat dari 2 nyata sendiri, semua hal lain menjadi sama.
Itu bukan “2 nyata/2hyper”. Anda masih memiliki persis 2 core, hanya saja masing -masing dapat menjalankan 2 utas sekaligus. Tak satu pun dari mereka yang lebih “nyata” dari yang lain.
Yah dia tidak salah bahwa empat inti sungguhan biasanya lebih cepat dari dua dengan hyperthreading (saya, di sisi lain, secara tidak benar secara tidak benar bahwa ada dua jenis benang yang berbeda pada sistem hyperthreading, oops)
Lebih banyak pilihan
Jlarja
ARS Centurion
Sejauh yang bisa saya baca, poster asli terutama menanyakan apakah throughput satu utas dipengaruhi oleh utas lain yang berjalan pada inti yang sama. Tentu saja, sangat! Mengapa Intel atau siapa pun bahkan membuat prosesor dual-core atau quad-core, jika Anda bisa mendapatkan kinerja yang sama dengan core tunggal atau dual-core hiper-threaded?
Lebih banyak pilihan
Fitten
Ars Legatus Legionis
Langganan++
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29440315#P29440315: ISM45JMP mengatakan:
Jlarja [/url] “: ism45jmp] sejauh yang bisa saya baca, poster aslinya terutama menanyakan apakah throughput satu utas dipengaruhi oleh utas lain yang berjalan pada inti yang sama. Tentu saja, sangat!
Itu tergantung pada apa yang dilakukan utas. Dua utas yang bersaing untuk sumber daya perangkat keras yang sama (keduanya berat FPU, keduanya terikat memori, dll.) Tetapi dua utas yang tidak banyak bersaing (satu utas FPU berat, yang lain dengan praktis tanpa FPU, misalnya, dan keduanya berperilaku cukup baik sehubungan dengan cache) tidak akan memiliki kompetisi sebesar besar.
Nomenklatur normal untuk membahas ini adalah 4C/8T (empat core, delapan utas), 2C/4T (dua core, empat utas), dll. Tidak ada perbedaan dalam prosesor modern antara dua utas (atau lebih) per inti untuk penunjukan “dua inti, dua hiper”.
Lebih banyak pilihan
Byosys
Ars praefectus
Langganan++
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29441313#p29441313: 26miaqlu mengatakan:
Fitten [/url] “: 26miaqlu]
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29440315#p29440315: 26miaqlu mengatakan:
Jlarja [/url] “: 26miaqlu] sejauh yang saya bisa baca, poster aslinya terutama menanyakan apakah throughput dari satu utas dipengaruhi oleh utas lain yang berjalan pada inti yang sama. Tentu saja, sangat!
Itu tergantung pada apa yang dilakukan utas. Dua utas yang bersaing untuk sumber daya perangkat keras yang sama (keduanya berat FPU, keduanya terikat memori, dll.) Tetapi dua utas yang tidak banyak bersaing (satu utas FPU berat, yang lain dengan praktis tanpa FPU, misalnya, dan keduanya berperilaku cukup baik sehubungan dengan cache) tidak akan memiliki kompetisi sebesar besar.
Nomenklatur normal untuk membahas ini adalah 4C/8T (empat core, delapan utas), 2C/4T (dua core, empat utas), dll. Tidak ada perbedaan dalam prosesor modern antara dua utas (atau lebih) per inti untuk penunjukan “dua inti, dua hiper”.
Sementara hyperthreading tidak dapat membantu kinerja utas tunggal, overhead umumnya sangat kecil. Di luar beberapa kasus seperti Fitten dijelaskan, hyperthreading umumnya cukup baik dalam memanfaatkan bagian prosesor yang tidak digunakan menjalankan beberapa utas secara paralel pada inti fisik yang sama, mempercepat hal -hal. Misalnya, menggunakan utas kedua pada porsi inti fisik yang tidak digunakan dapat mencegah penjadwal membutuhkan interupsi tugas yang Anda pedulikan untuk menangani tugas latar belakang.
Lebih banyak pilihan
Monster topi
Ars Legatus Legionis
Langganan
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29441313#p29441313: 3jxfynh2 mengatakan:
Fitten [/url] “: 3jxfynh2]
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29440315#p29440315: 3jxfynh2 mengatakan:
Jlarja [/url] “: 3jxfynh2] sejauh yang bisa saya baca, poster aslinya terutama menanyakan apakah throughput satu utas dipengaruhi oleh utas lain yang berjalan pada inti yang sama. Tentu saja, sangat!
Nomenklatur normal untuk membahas ini adalah 4C/8T (empat core, delapan utas), 2C/4T (dua core, empat utas), dll. Tidak ada perbedaan dalam prosesor modern antara dua utas (atau lebih) per inti untuk penunjukan “dua inti, dua hiper”.
Ya ada. CPU mengidentifikasi sebagai prosesor “fisik” dan “logis” – setiap inti adalah fisik + logis. OS biasanya (kecuali manajemen daya mengintervensi) akan menjadwalkan fisik sebelum logis. Android (Perangkat Nexus, tidak ada yang mewah.Hal -hal kecil), misalnya, membutuhkan beban tertentu dan jam minimum tertentu tercapai sebelum akan membangunkan inti lain.
Lebih banyak pilihan
Breze
Ars praefectus
Dengan hyper threading, mesin memiliki 2 (atau 4 [ada yang pernah melihat 3?]) utas per inti fisik. Pemetaan utas yang digunakan -> utas tergantung pada lingkungan. Tergantung pada beban kerja, mungkin masuk akal untuk menjadwalkan tugas untuk melarang inti fisik yang terpisah. OpenMP misalnya tidak, tetapi Anda dapat memaksanya.
Tampaknya lebih mungkin bahwa OS Anda membuat perbedaan yang sewenang -wenang antara utas, daripada beberapa utas Anda adalah spesial. Masuk akal untuk menandai satu utas per inti secara sewenang -wenang sebagai ‘ekstra.’Dengan begitu programmer dapat mengatakan “Mulailah menjadwalkan tugas pada utas nyata” ketika mereka benar -benar berarti “Tetapkan utas satu per inti.”
Lebih banyak pilihan
redleader
Ars Legatus Legionis
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29443099#P29443099: 2856VWWW mengatakan:
Breze [/url] “: 2856vwww] Dengan hyper threading, mesin memiliki 2 (atau 4 [Adakah yang pernah melihat 3?])
Tentu, Qualcomm Hexagon adalah SMT 3 arah.
Lebih banyak pilihan
redleader
Ars Legatus Legionis
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29442833#p29442833: zynp60yg mengatakan:
Topi monster [/url] “: zynp60yg]
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29441313#P29441313: Zynp60yg mengatakan:
Fitten [/url] “: zynp60yg]
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29440315#p29440315: zynp60yg mengatakan:
Jlarja [/url] “: zynp60yg] sejauh yang bisa saya baca, poster aslinya terutama menanyakan apakah throughput dari satu utas dipengaruhi oleh utas lain yang berjalan pada inti yang sama. Tentu saja, sangat!
Nomenklatur normal untuk membahas ini adalah 4C/8T (empat core, delapan utas), 2C/4T (dua core, empat utas), dll. Tidak ada perbedaan dalam prosesor modern antara dua utas (atau lebih) per inti untuk penunjukan “dua inti, dua hiper”.
Ya ada. CPU mengidentifikasi sebagai prosesor “fisik” dan “logis” – setiap inti adalah fisik + logis.
Sejauh yang saya tahu, itu hanya hal organisasi untuk membantu OS mengalokasikan utas dengan benar. Pilihan yang mana “fisik” adalah sewenang -wenang.
Lebih banyak pilihan
Netmasteroc3
Ars praefectus
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29442833#p29442833: 3rsj3eod mengatakan:
Topi monster [/url] “: 3rsj3eod]
Ya ada. CPU mengidentifikasi sebagai prosesor “fisik” dan “logis” – setiap inti adalah fisik + logis.
Eh, itu bukan bagaimana Intel CPU menyajikan informasi atau, afaik, beroperasi secara elektrik. Semua utas itu logis, tidak ada konsep utas fisik atau utas logis saat Anda menggambarkannya. Inti dapat mengeksekusi 1 atau lebih (2, 4 dalam kasus xeon phis) utas. Itulah tingkat visibilitas yang Anda miliki ke dalam sistem. Secara internal, perangkat keras Decode/Dispatch/Jadwal ujung depan bukanlah casing khusus apa pun, juga tidak perlu, hanya melacak N-thread hingga batas yang diizinkan.
Informasi CPUID mencerminkan utas logis ini sebagai konsep anak ke inti fisik. OS jelas dapat melacak utas mana yang dijalankan di mana CPU, tetapi tidak ada visibilitas ke dalam penjadwal inti atau unit eksekusi di luar itu.
Lebih banyak pilihan
Monster topi
Ars Legatus Legionis
Langganan
Saya tidak mengatakan apa -apa tentang “utas fisik” atau “utas logis”. Saya mengatakan inti CPU menampilkan dirinya ke OS sebagai prosesor fisik dan logis. Ini membantu penjadwal OS baik menghemat daya (jangan bangunkan inti lain jika inti smting dapat mengambil utas lain) atau berkinerja lebih baik (gunakan dua core, bukan satu).
Sejauh utas peduli, mereka hanya “berlari”. Tidak ada yang diprioritaskan di atas yang lain, mereka mendapatkan sumber daya saat dan ketika operator CPU memutuskan.
Lebih banyak pilihan
Netmasteroc3
Ars praefectus
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29446355#p29446355: 7e0sh86s mengatakan:
Topi monster [/url] “: 7e0sh86s]
Saya mengatakan inti CPU menampilkan dirinya ke OS sebagai prosesor fisik dan logis. Saya mengatakan inti CPU menampilkan dirinya ke OS sebagai prosesor fisik dan logis.
Saya tidak yakin apakah kita berbicara melewati satu sama lain atau tidak. Padahal nitpick Anda sepenuhnya tangensial sampai poin yang saya buat.
Apa yang saya katakan adalah bahwa, setidaknya untuk Intel, hubungan fisik-logis adalah hierarkis dan bahwa perangkat keras tidak menarik atau menyajikan perbedaan seperti Anda. Prosesor fisik adalah inti; Setiap inti berisi 1 atau lebih prosesor logis. Ini telah terjadi setidaknya ke P4S sejauh yang saya tahu dari data CPUID yang saya miliki.
Perbedaan yang Anda gambar tidak cocok dengan realitas, setidaknya tidak dengan cara saya (dan tampaknya redleader) menafsirkannya.
Dari perspektif perangkat keras, prosesor logis adalah tag dalam logika yang melacak yang mendaftarkan file dan instruksi milik utas yang tidak ada konstruk yang sebenarnya. Dari perspektif perangkat lunak, prosesor fisik hanyalah sebuah wadah yang mengelompokkan prosesor dan cache logis sehingga OS tahu tentang pengaturan fisik dalam silikon.
Lebih banyak pilihan
Fitten
Ars Legatus Legionis
Langganan++
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29446355#p29446355: mrito0bp mengatakan:
Topi monster [/url] “: mrito0bp] tidak ada yang diprioritaskan di atas yang lain, mereka mendapatkan sumber daya saat dan ketika operator CPU memutuskan.
Itulah yang saya katakan
Lebih banyak pilihan
Jimbopalmer
ARS Tribunus Angusticlavius
Langganan
Saya akan mengambil sudut pandang lain tentang apa yang diminta OP.
Dalam hyperthreading yang sangat awal, ada beberapa beban kerja di mana ia lebih lambat dari tugas yang sama dengan itu dimatikan.
Ini tidak benar selama bertahun -tahun.
Jika Anda memiliki satu tugas, itu akan berjalan secepat dengan hyperthreading dihidupkan seperti halnya dimatikan.
Jika, sebagai contoh, Anda memiliki CPU dengan dua inti dan mampu 4 utas itu akan menjalankan satu utas secepat inti tunggal, cpu utas tunggal pada kecepatan clock yang sama. Jika Anda memulai utas kedua, kemungkinan besar akan ditugaskan ke inti kedua, dan kecuali hambatan memori, keduanya akan berjalan pada kecepatan yang sama dengan menggunakan dua PC pada kecepatan clock yang sama. Throughput meningkat 100%
Setelah Anda memulai utas ketiga (bukan utas ketiga!) Satu inti akan mulai hyperthreading, yang biasanya meningkatkan throughput hanya 30%lagi, sehingga setiap inti melambat sebesar 35%, rata -rata. (Sekali lagi, ini tergantung pada beban kerja, algoritma yang berbeda mungkin sudah menunggu sumber daya 35% dari waktu. Beberapa algoritma mungkin sangat terikat memori sehingga dua inti yang menjalankan hanya dua utas dapat bertentangan)
Setelah keempat utas digunakan, Anda mendapatkan sekitar 2.6 kali throughput satu utas, jadi dibandingkan dengan utas tunggal yang berjalan pada mesin yang sama, kemungkinan hanya 65% lebih cepat dari sebelumnya. Tapi itu tidak bersatu karena hyerthreading, itu melambat karena Anda meminta komputer Anda untuk melakukan 4 tugas separte. Apakah Anda meminta CPU berulir inti tunggal tunggal untuk melakukan 4 tugas terikat komputasi, hanya akan 25% lebih cepat dari penugasan tunggal.
Hyperthreading adalah kemenangan setiap kali pabrikan kekurangan ruang untuk hanya menambahkan core. Di masa depan dengan mati yang lebih kecil dan resolusi yang lebih baik, lebih banyak inti dan hyperthreading akan menjadi semakin umum. Hampir satu -satunya hal lain yang mereka gunakan transistor adalah cache yang lebih besar dan lebih besar, yang membantu beban kerja tidak bertentangan.
Lebih banyak pilihan
Jlarja
ARS Centurion
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29441313#p29441313: jvvftvyo mengatakan:
Fitten [/url] “: jvvftvyo]
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29440315#p29440315: jvvftvyo mengatakan:
Jlarja [/url] “: jvvftvyo] sejauh yang bisa saya baca, poster asli terutama menanyakan apakah throughput dari satu utas dipengaruhi oleh utas lain yang berjalan pada inti yang sama. Tentu saja, sangat!
Itu tergantung pada apa yang dilakukan utas. Dua utas yang bersaing untuk sumber daya perangkat keras yang sama (keduanya berat FPU, keduanya terikat memori, dll.) Tetapi dua utas yang tidak banyak bersaing (satu utas FPU berat, yang lain dengan praktis tanpa FPU, misalnya, dan keduanya berperilaku cukup baik sehubungan dengan cache) tidak akan memiliki kompetisi sebesar besar.
Nomenklatur normal untuk membahas ini adalah 4C/8T (empat core, delapan utas), 2C/4T (dua core, empat utas), dll. Tidak ada perbedaan dalam prosesor modern antara dua utas (atau lebih) per inti untuk penunjukan “dua inti, dua hiper”.
Ini adalah teori yang bagus (dan membuat diagram hebat dalam slide pemasaran), tetapi saya benar -benar ingin melihatnya diuji di suatu tempat. Terakhir kali saya melihat beberapa tes situs ulasan ini di era P4, ketika hiper-threading adalah hal baru. Mereka tidak dapat menemukan sepasang beban kerja yang berjalan dengan baik, meskipun mempertimbangkan arsitektur P4, itu tidak terlalu mengejutkan.
Adakah yang tahu jika ini telah diuji belakangan ini? Terutama Haswell sepertinya bisa berjalan dengan baik dalam tes seperti itu, meskipun sudah cukup baik di banyak integer hanya tes throughput hiper-threading.
Ngomong-ngomong, saya suka hiper-threading. Ini bagus untuk menyusun basis kode C (++) yang besar, itulah yang saya lakukan sepanjang waktu di tempat kerja. Tapi tidak ada pertanyaan bahwa jumlah ganda core akan lebih baik.
Lebih banyak pilihan
Fitten
Ars Legatus Legionis
Langganan++
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29450801#P29450801: 1CF23TGA Said:
Jlarja [/url] “: 1cf23tga]
Adakah yang tahu jika ini telah diuji belakangan ini?
Ini telah banyak diuji selama bertahun -tahun (mudah ditemukan dengan mencari Google). Hasil bervariasi tergantung pada beban kerja dan algoritma. Seperti disebutkan di atas, utas yang bersaing untuk sumber daya yang sama dapat menunjukkan sejumlah perilaku yang berbeda sementara skenario lain dimainkan dengan baik (hingga 20% waktu eksekusi proses keseluruhan yang lebih cepat dalam tes yang menguntungkan untuk HT). Ada kasus khusus di mana HT dapat memiliki perlambatan yang signifikan (kompetisi sumber daya yang parah) tetapi sebagian besar waktu, perlambatan tampaknya berada dalam margin kesalahan tes. Seperti biasa, penting untuk menemukan tes yang mirip dengan tugas yang diharapkan untuk dilakukan untuk menentukan efek HT pada kinerja keseluruhan dan apakah layak diaktifkan atau tidak.
Lebih banyak pilihan
redleader
Ars Legatus Legionis
Pada haswell, backend jauh lebih luas (7 port), dan lebih banyak dari mereka dapat melakukan operasi integer, jadi mungkin penskalaannya sedikit berbeda karena mereka akan kurang berselisih untuk port eksekusi:
Dengan 4 port untuk beban/toko, 4 untuk integer, dan 2 untuk cabang, bahkan dua utas yang menjalankan beban kerja integer yang identik mungkin tidak memperkenalkan banyak pertengkaran.
Lebih banyak pilihan
Jlarja
ARS Centurion
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29453201#p29453201: 1g7fy5rl mengatakan:
fitten [/url] “: 1g7fy5rl]
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29450801#p29450801: 1g7fy5rl mengatakan:
Jlarja [/url] “: 1g7fy5rl]
Adakah yang tahu jika ini telah diuji belakangan ini?
Ini telah banyak diuji selama bertahun -tahun (mudah ditemukan dengan mencari Google). Hasil bervariasi tergantung pada beban kerja dan algoritma. Seperti disebutkan di atas, utas yang bersaing untuk sumber daya yang sama dapat menunjukkan sejumlah perilaku yang berbeda sementara skenario lain dimainkan dengan baik (hingga 20% waktu eksekusi proses keseluruhan yang lebih cepat dalam tes yang menguntungkan untuk HT). Ada kasus khusus di mana HT dapat memiliki perlambatan yang signifikan (kompetisi sumber daya yang parah) tetapi sebagian besar waktu, perlambatan tampaknya berada dalam margin kesalahan tes. Seperti biasa, penting untuk menemukan tes yang mirip dengan tugas yang diharapkan untuk dilakukan untuk menentukan efek HT pada kinerja keseluruhan dan apakah layak diaktifkan atau tidak.
Saya tidak bermaksud menjalankan beban kerja dengan atau tanpa hiper-threading. Itu sedang diuji sepanjang waktu (Core i5 vs i7). Maksud saya menjalankan dua beban kerja yang berbeda (sesuatu yang mengambang berat seperti raytracing dan integer berat seperti kompilasi C ++ paralel) bersama -sama, di mana kita mungkin bisa melihat jenis hasil “tidak memperlambat utas lain”.
Dari jawaban Anda di atas (proses keseluruhan 20 % lebih cepat) saya melihat bahwa kita masih berbicara tentang berbagai hal. Terkadang Anda tidak peduli dengan kemajuan keseluruhan, tetapi tentang satu tugas (yang mungkin satu atau lebih utas, tidak terlalu penting, asalkan tidak dapat mematok seluruh prosesor).
Sebelum hyper-threading, Anda dapat menjalankan proyek komputasi terdistribusi sepanjang waktu di latar belakang. Mereka dijalankan pada prioritas idle, jadi mereka tidak memperlambat segalanya (setidaknya tidak terlalu banyak sehingga Anda akan memperhatikan). Saat ini itu tidak berhasil, karena memiliki utas DC berjalan bersama dengan hal-hal lain pada core yang hiper-threading akan memperlambat barang-barang lainnya.
Contoh lain dari kehidupan nyata: Pada DVR berbasis mythtv saya, saya harus membatasi deteksi komersial latar belakang untuk menggunakan hanya satu utas pada 4c/8t i7 4771, karena menggunakan lebih banyak mengganggu pemutaran HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa itu hanya menggunakan empat utas HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa ia hanya menggunakan empat utas HD,. Mungkin siapa pun yang mengkodekannya tidak mempercayai hiper-threading. Jika menggunakan semua 8 utas, tidak akan ada masalah). Tidak membantu bahwa deteksi komersial dijalankan dengan nilai -nilai bagus yang tinggi, masih mencuri waktu dari tugas latar depan yang lebih penting untuk mendapatkan gambar dengan lancar di TV.
Saya percaya ini adalah jenis situasi yang ditanyakan oleh poster asli. Dalam situasi ini, hiper-threading memperlambat segalanya dengan cara yang tidak dilakukannya dalam kasus non-hyper-threading. Anda dapat menyalahkan pengguna karena bodoh atau OS menjadi bodoh dan mengatakan bahwa semuanya berfungsi seperti yang dirancang. Saya tidak setuju atau peduli. Saya hanya mencoba menjawab pertanyaan asli .
Lebih banyak pilihan
Netmasteroc3
Ars praefectus
[url = http: // arstechnica.com/civis/viewtopic.php?p = 29457345#p29457345: tcezxjmb mengatakan:
Jlarja [/url] “: tcezxjmb]
Contoh lain dari kehidupan nyata: Pada DVR berbasis mythtv saya, saya harus membatasi deteksi komersial latar belakang untuk menggunakan hanya satu utas pada 4c/8t i7 4771, karena menggunakan lebih banyak mengganggu pemutaran HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa itu hanya menggunakan empat utas HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa ia hanya menggunakan empat utas HD,.
Pertanyaan yang lebih besar dalam pikiran saya, adalah mengapa mengambil 4 utas dan banyak waktu komputasi untuk memutar konten HD.
Pemutaran 1080 jam.264 dan h.265 Konten tidak terlalu menuntut, dan Anda memiliki banyak CPU untuk menanganinya. Atau dengan kata lain, pemutaran konten 1080p di komputer saya hanya memakan 10% dari waktu CPU saya (I5-2500K) dan saya dapat mengkodekan konten 1080p pada atau lebih baik daripada waktu nyata dan menonton konten 1080p pada saat yang sama dan pemutaran tetap lancar dan enkode tetap seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya menjadi seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya dan playback tetap lancar dan encode tetap seperti yang seharusnya seperti itu. Kasus ini pada dasarnya sama di i7-4980hq saya di MBP saya.
Lebih banyak pilihan
Jlarja
ARS Centurion
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29457527#P29457527: CKO73P2V mengatakan:
Netmasteroc3 [/url] “: cko73p2v]
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29457345#P29457345: CKO73P2V mengatakan:
Jlarja [/url] “: cko73p2v]
Contoh lain dari kehidupan nyata: Pada DVR berbasis mythtv saya, saya harus membatasi deteksi komersial latar belakang untuk menggunakan hanya satu utas pada 4c/8t i7 4771, karena menggunakan lebih banyak mengganggu pemutaran HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa itu hanya menggunakan empat utas HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa ia hanya menggunakan empat utas HD,.
Pertanyaan yang lebih besar dalam pikiran saya, adalah mengapa mengambil 4 utas dan banyak waktu komputasi untuk memutar konten HD.
Pemutaran 1080 jam.264 dan h.265 Konten tidak terlalu menuntut, dan Anda memiliki banyak CPU untuk menanganinya. Atau dengan kata lain, pemutaran konten 1080p di komputer saya hanya memakan 10% dari waktu CPU saya (I5-2500K) dan saya dapat mengkodekan konten 1080p pada atau lebih baik daripada waktu nyata dan menonton konten 1080p pada saat yang sama dan pemutaran tetap lancar dan enkode tetap seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya menjadi seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya seperti yang seharusnya dan playback tetap lancar dan encode tetap seperti yang seharusnya seperti itu. Kasus ini pada dasarnya sama di i7-4980hq saya di MBP saya.
Itu tidak menggunakan metode yang paling optimal (karena itu tampaknya tidak dapat menangani h yang rusak.264 yang keluar dari konektor TV kabel sesekali) dan juga melakukan beberapa pemrosesan lain (de-interacing mungkin merupakan langkah yang paling menuntut). Tidak ada akselerasi perangkat keras (bagian dari itu “tidak menggunakan metode yang paling optimal”). Juga, bitrate seringkali lebih tinggi dari apa yang Anda lihat dalam konten yang dapat dialirkan atau diunduh (4-5 GBS / jam cukup normal saya pikir).
Sunting: Biasanya beban sekitar dua utas yang sepenuhnya digunakan, omong -omong,. Kasing keempat utas cukup sering terjadi untuk menjadi mengganggu. Terutama karena itu tidak hanya melewatkan bingkai atau gagap, itu sering mengakhiri pemutaran sama sekali (mungkin mythtv berpikir rekaman telah berakhir, saya tidak tahu).
Memutar file yang sama dengan VLC berfungsi jauh lebih baik, kecuali ketika VLC hanya menolak untuk memainkannya. Sangat sulit untuk menonton TV hari ini.
Lebih banyak pilihan
Fitten
Ars Legatus Legionis
Langganan++
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29457345#P29457345: 2MVY04FA mengatakan:
Jlarja [/url] “: 2mvy04fa]
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29453201#P29453201: 2MVY04FA Said:
fitten [/url] “: 2mvy04fa]
[url = http: // arstechnica.com/civis/viewtopic.php?P = 29450801#P29450801: 2MVY04FA Said:
Jlarja [/url] “: 2mvy04fa]
Adakah yang tahu jika ini telah diuji belakangan ini?
Ini telah banyak diuji selama bertahun -tahun (mudah ditemukan dengan mencari Google). Hasil bervariasi tergantung pada beban kerja dan algoritma. Seperti disebutkan di atas, utas yang bersaing untuk sumber daya yang sama dapat menunjukkan sejumlah perilaku yang berbeda sementara skenario lain dimainkan dengan baik (hingga 20% waktu eksekusi proses keseluruhan yang lebih cepat dalam tes yang menguntungkan untuk HT). Ada kasus khusus di mana HT dapat memiliki perlambatan yang signifikan (kompetisi sumber daya yang parah) tetapi sebagian besar waktu, perlambatan tampaknya berada dalam margin kesalahan tes. Seperti biasa, penting untuk menemukan tes yang mirip dengan tugas yang diharapkan untuk dilakukan untuk menentukan efek HT pada kinerja keseluruhan dan apakah layak diaktifkan atau tidak.
Saya tidak bermaksud menjalankan beban kerja dengan atau tanpa hiper-threading. Itu sedang diuji sepanjang waktu (Core i5 vs i7). Maksud saya menjalankan dua beban kerja yang berbeda (sesuatu yang mengambang berat seperti raytracing dan integer berat seperti kompilasi C ++ paralel) bersama -sama, di mana kita mungkin bisa melihat jenis hasil “tidak memperlambat utas lain”.
Dari jawaban Anda di atas (proses keseluruhan 20 % lebih cepat) saya melihat bahwa kita masih berbicara tentang berbagai hal. Terkadang Anda tidak peduli dengan kemajuan keseluruhan, tetapi tentang satu tugas (yang mungkin satu atau lebih utas, tidak terlalu penting, asalkan tidak dapat mematok seluruh prosesor).
Sebelum hyper-threading, Anda dapat menjalankan proyek komputasi terdistribusi sepanjang waktu di latar belakang. Mereka dijalankan pada prioritas idle, jadi mereka tidak memperlambat segalanya (setidaknya tidak terlalu banyak sehingga Anda akan memperhatikan). Saat ini itu tidak berhasil, karena memiliki utas DC berjalan bersama dengan hal-hal lain pada core yang hiper-threading akan memperlambat barang-barang lainnya.
Contoh lain dari kehidupan nyata: Pada DVR berbasis mythtv saya, saya harus membatasi deteksi komersial latar belakang untuk menggunakan hanya satu utas pada 4c/8t i7 4771, karena menggunakan lebih banyak mengganggu pemutaran HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa itu hanya menggunakan empat utas HD, yang mematok empat utas hampir sepenuhnya (saya tidak tahu mengapa ia hanya menggunakan empat utas HD,. Mungkin siapa pun yang mengkodekannya tidak mempercayai hiper-threading. Jika menggunakan semua 8 utas, tidak akan ada masalah). Tidak membantu bahwa deteksi komersial dijalankan dengan nilai -nilai bagus yang tinggi, masih mencuri waktu dari tugas latar depan yang lebih penting untuk mendapatkan gambar dengan lancar di TV.
Saya percaya ini adalah jenis situasi yang ditanyakan oleh poster asli. Dalam situasi ini, hiper-threading memperlambat segalanya dengan cara yang tidak dilakukannya dalam kasus non-hyper-threading. Anda dapat menyalahkan pengguna karena bodoh atau OS menjadi bodoh dan mengatakan bahwa semuanya berfungsi seperti yang dirancang. Saya tidak setuju atau peduli. Saya hanya mencoba menjawab pertanyaan asli .
Saya sebenarnya telah mengetik sedikit tentang ini di pesan lain tetapi menghapusnya. Stokes memiliki beberapa presentasi HT di sini di ARS yang bagus untuk dibaca/ditonton. Namun, dalam penjelasan yang paling sederhana, instruksi dari dua aliran instruksi HT dikeluarkan untuk mengisi ‘kesenjangan’ dalam prosesor sumber daya idle prosesor. Beberapa instruksi dari kedua aliran akan membutuhkan sumber daya yang sama secara bersamaan. Ketika itu terjadi, pertengkaran itu tentu akan menjadi serial untuk instruksi tersebut. Di dunia yang sempurna (atau dengan sumber daya yang cukup), mereka dapat dikeluarkan secara paralel dan tidak ada dampak yang akan terlihat. Namun, jika setiap inti hanya memiliki 2x sumber daya yang dibutuhkan maka itu akan secara efektif menjadi dua inti fisik yang terpisah jadi mengapa tidak hanya membuat dua core yang terpisah?
Pikirkan tentang masa lalu waktu sederhana mengiris satu inti (inti berulir tunggal). Jika utas menyembunyikan IO tunggu, misalnya, maka OS dapat mendahului utas itu dan menjadwalkan yang lain. Semua ini ada di level OS. Namun, OS tidak bisa benar -benar melihat ke bawah di tingkat cache, juga tidak mau, karena overhead untuk menjadwalkan tugas lain dalam waktu pengiris sangat besar dibandingkan dengan cache miss, misalnya. Jadi sekarang kami memiliki SMT/HT yang ada di perangkat keras dan * dapat * melihat pada tingkat bahkan cache miss dan warung bahaya eksekusi (siklus jam digit tunggal) dan dapat mengeluarkan instruksi dari beberapa utas/konteks perangkat keras untuk mengambil keuntungan dari sumber daya perangkat keras inti idle inti.
Jadi perluas ini (serangkaian contoh yang disederhanakan ideal. Asumsikan semua sumber daya inti adalah sama. seperti semua sumber daya tipe integer, abaikan floating point atau lainnya). Jika Anda memiliki dua utas identik yang beroperasi sedemikian rupa karena tidak ada kios (data atau lainnya) dan inti tidak memiliki sumber daya tambahan atas apa yang dapat digunakan oleh satu utas (ini tidak terjadi dengan prosesor HT saat ini. Mereka memiliki lebih banyak) maka utas akan masing -masing secara hipotetis mengambil 2x selama waktu wallclock, dengan asumsi penjadwalan yang sangat adil (ambil satu instruksi dari satu aliran, kemudian satu dari yang lain, ulangi) untuk menyelesaikan karena seperti menyeret dua dek kartu bersama dalam shuffufle sempurna yang sempurna. Dek hasil akhir kartu adalah 2x setinggi salah satu deck asli karena sekarang ada 2x jumlah kartu di dek yang dihasilkan (sebanding dengan 2x waktu eksekusi wallclock).
Sekarang, semakin banyak kios yang terjadi (atau semakin banyak sumber daya yang dimiliki inti. atau keduanya) berarti lebih banyak waktu sumber daya mungkin menganggur untuk satu utas di mana utas lainnya dapat dieksekusi tanpa mempengaruhi eksekusi utas pertama. Anda kemudian dapat masuk ke dalam situasi di mana pelaksanaan utas kedua tidak berdampak pada pelaksanaan utas pertama sejauh waktu eksekusi ujung ke ujung dari apa yang akan ditemui oleh utas pertama bahkan memiliki utas kedua yang tidak ada. Benang akan mengalami waktu eksekusi wallclock yang sama persis dengan atau tanpa utas HT lainnya yang dieksekusi. Skenario kedua ini juga akan sama dengan memiliki dua inti fisik, masing-masing dengan hanya satu konteks (seperti yang kita miliki di multicore, prosesor non-HT saat ini), atau inti 1C/2T dengan dua kali sumber inti yang dapat digunakan oleh satu utas, atau jumlah kios/cache yang sempurna, dll.
Jadi kenyataan ada di suatu tempat di antaranya tetapi kita dapat merancang skenario (mungkin buatan) di mana penalti waktu eksekusi wallclock kasus terbaik adalah 0% dan yang terburuk adalah, katakanlah, 100%. Apa yang mungkin dialami seseorang dalam pelaksanaan wallclock dari satu utas sangat tergantung pada sumber daya inti dan kedua aliran instruksi utas. Prosesor HT cenderung memiliki 2x jumlah sumber daya yang mungkin bisa digunakan oleh satu utas. Aliran instruksi tidak memiliki seperangkat kebutuhan sumber daya/kios/cache yang sempurna sehingga beberapa aliran instruksi dapat diselingi dengan cara yang tidak ada utas yang dipengaruhi oleh yang lain. Di sisi lain, prosesor HT dapat memanfaatkan granularitas “menunggu” dalam prosesor yang tidak terlihat pada tingkat OS dan yang akan terlalu mahal untuk memanfaatkan, dalam hal apa pun (waktu pengiris), untuk meningkatkan throughput beberapa utas eksekusi beberapa utas eksekusi. Sementara setiap utas yang diberikan dapat mengalami waktu eksekusi wallclock yang lebih lama, tugas keseluruhan (keduanya/semua utas bersama -sama) dapat mengalami waktu eksekusi wallclock yang lebih pendek dibandingkan dengan tidak memiliki HT. Mengingat sifat beban kerja yang sangat bergantung pada pertanyaan, saya ragu untuk mencoba menebak angka apa pun pada perlambatan Wallclock tunggal, bahkan mencoba membangun kasus “rata-rata”.
Namun. Saya akan mengatakan bahwa jika Anda peduli dengan waktu eksekusi wallclock dari satu utas, maka menonaktifkan (atau tidak memiliki) ht kemungkinan akan menjadi cara untuk pergi. Jika Anda khawatir tentang kinerja sistem secara keseluruhan, waktu eksekusi wallclock suatu tugas atau beberapa tugas simultan, maka memungkinkan HT kemungkinan akan menjadi cara untuk pergi. Saya tahu dari pengalaman pribadi bahwa VM, misalnya, mendapat manfaat yang cukup baik dari HT. Saya juga menulis sejumlah aplikasi di mana memunculkan sebanyak mungkin utas seperti konteks HT dalam lingkungan HT juga menunjukkan peningkatan throughput yang bagus dibandingkan dengan penjadwalan hanya jumlah utas sebagai inti fisik pada sistem yang sama. Namun, dari dunia HPC, saya tahu bahwa bahkan kode FPU “berat” cenderung benar -benar kurang berat FPU dari yang mungkin diperkirakan (40% dari instruksi instruksi instruksi FPU pada beberapa kode pemecahan. instruksi bilangan bulat sisanya). Namun, dalam kode-kode tersebut, pemanfaatan cache akan menjadi faktor yang besar (secara efektif mengurangi separuh cache Anda saat berbagi utas dengan HT) dan cache-miss untuk memori utama mungkin mulai menjadi faktor yang lebih signifikan (algoritma adaptif ukuran cache mungkin membantu di sana).