CPU에서 지원 가능한 Thread의 수??
글쓴이: hyper9 / 작성시간: 화, 2008/06/03 - 11:52오후
제목과 같이 CPU에서 지원 가능한 Thread의 수에
대해 질문을 하려고 합니다.
오늘 Sun Site에 갔다가,,8개의 Core를 가지고 64개의
thread를 지원한다는 Processor를 보았는데요...
이름은 Ultra Sparc T2라고 하네요..
이렇게 CPU core에서 동시에 수행할 수 있는 thread의
갯수에 HW적으로 제한이 있는가요?
Processor의 HW구조에 대해서 잘 몰라서 질문을 드립니다.
Forums:
이론상 무한대의
이론상 무한대의 쓰레드를 만들수 있습니다. 그렇지만 뭐든 효율적인 면을 고려한 한계가 있는 법이죠.
예를 들면 각종 툴에서(Visual C 또는 C++ Builder 등에서) 쓰레드를 만들어 보면 어느 한계 이상은 만들어지지 않을 수 있습니다.
그건 그 툴에서 이 한계가 정상적으로 쓰레딩을 할 수 있는 리미트라고 보기때문 인데요. 이것도 설정이기 때문에 수정에 따라서는 그 이상의 쓰레드를 만들수 있습니다.
암튼 메모리가 허용하는한 쓰레드는 한정없이 만들수 있습니다.
솔라리스 쓰레드는
솔라리스 쓰레드는 2가지인가 있습니다.
리눅스쪽 쓰레드보다 좀더 cpu 랑 붙어 있는 개념으로 알고 있습니다.
------------------------------------------------------------------------------------------------
Life is in 다즐링
------------------------------------------------------------------------------------------------
Life is in 다즐링
CPU 내부 구조에 따라서 다릅니다.
소프트웨어 개념의 Thread 를 지원하기 위해서 일부러 CPU 상에 Thread 처리를 위한 Multi Path 를 설계할 수는 있습니다.
그러나 Multipath 에 대한 설계가 이루어지지 않았다고 해서 Thread 를 쓸 수 없는 것은 아닙니다.
Multi Path 는 Cache Controller 와 Prefatch Control 로 미리 검색하여서, I-Cache 와 D-Cache 의 내용 중 D-Cache 의 내용을
각 스레드별로 처리할 수 있도록 CPU Process Multi Path 를 고안하면 프로세스 전환시 Pipeline 을 유지하면서 Thread 를 처리할 수 있게 됩니다.
====
( - -)a 이제는 학생으로 가장한 백수가 아닌 진짜 백수가 되어야겠다.
댓글 달기