Re: [問題] multicore 和 multithreading 的關係
※ 引述《dataiann (DaTaiAnn)》之銘言:
: 最近聽到一些新的 multicore CPU 對於程式的影響
: 大概的意思是說, 每個 core 的時脈比以前的 single core 低
: 但是, 藉由多個 core 來提升 performance
: 所以, 現在一些同事在測量 data/instruction cache 的 hit rate
: 同時, 有提到將來寫程式和 multithreading 的關係之類的
: 我本身不是CS相關科系, 所以不是很了解 multicore 和 multithread 的關係
: 對於 thread 也不是很清楚
據我瞭解,Linux 和 Windows 對於 Thread 的 implement 方式並不相同,在
Linux 裡面 Thread 是以所謂的 LWP (lightweight process) 方式存在 kernel
中,因此從 schedule 的角度來看,都是以 process 為單位做 scheduling
而支援 multi-core 的 scheduler 就會有能力將 N 個 process 同時 scheduling
到 N 個 core 上,端看有多少個 core,這樣就可以瞭解為什麼要實作
multithreading 的程式..
至於效能的提升,就不是可以這麼簡單就探討完,這牽涉到眾多因素,我的能力
也不足以探討這個深奧的問題..
在 Understanding the Linux Kernel 這本書第三、七章也有提到 LWP 與
scheduler 的關係,有興趣可以參考看看..
至於 windows...MS 自己也出了本 Windows internals 裡面也有介紹
這部分我就不瞭解了..
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.188.188
推
04/03 20:05, , 1F
04/03 20:05, 1F
推
01/22 01:36, , 2F
01/22 01:36, 2F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章