Rust와 같은 동시 런타임에서 성능을 향상시키기 위해 CPU를 변경할 수있는 변경 사항이 있습니까? 예를 들어, 동시 런타임에 도움이되는 분기 예측 구현 또는 캐시 크기가 변경 되었습니까?
현재 CPU 디자인이 C와 같은 절차 적 런타임에 더 최적화 될 수 있다는 인상을 받았습니다. 대신에 동시 런타임에 최적화하려고한다면 CPU가 어떻게 달라 집니까?
불가피하게, 분기 코드는 절차 코드를 분석하는 연구 논문에서 도출 된 일반화를 기반으로 구현되었습니다. 동시성 추상화가 기존 분기 예측 알고리즘에 악영향을 미치는 런타임에 중요한 작업 세트를 추가하는지 궁금합니다. 예를 들어, for 루프에서 예측하는 것이 한 가지이지만 분기의 대상이 항상 새로운 메모리 부분 (그래픽, 텍스트 등) 인 경우 항상 캐시 미스가되고 분기가 발생하지 않습니다. 아직 다루지 않았기 때문입니다.
내용은 항상 RAM에 있지만 내용이 사용되는 것보다 작은 크기 순서로 분기되므로 캐시에로드 된 후에도 여전히 어리석은 질문 일 것입니다 ...하지만 여전히 거기에 있습니다 절차 적 런타임에서 캐시 및 분기 예측 변수에 저장된 컨텍스트에 대해 관찰 가능한 시간 경계 여야하며, 이는보다 병렬화 된 환경에서 추상화 경계로 나타납니다. 궁금합니다. 이러한 경계가 준수 되었습니까? 어떤 연구 논문도 이것을 분석 했습니까?
CPU 아키텍처는 동시 코드보다 절차 코드쪽으로 편향되어 있습니까? 또는 현대 CPU가 고도의 동시성 언어가 겪지 않는 충분히 범용 적인가?