2016-08-10 1 views
5

잘 알려진 바와 같이, Intel은 마이크로 코드 업데이트를 통해 Haswell 시리즈 프로세서에서 TSX를 비활성화해야했습니다. 이는 TSX 구현의 버그로 인해 이러한 명령어를 사용하면 오류가 발생할 수 있기 때문입니다.TSX 관련 Skylake 에라타 SKL-105의 상태는 어떻습니까?

잘 알려지지 않은 것으로 보이는 것은 새로운 아키텍처 인 Skylake에서 TSX에 영향을 미치는 정오표가있는 것입니다. 구체적 에라타 "SKL-105"은 여기서 언급 :

http://www.intel.com/content/www/us/en/processors/core/desktop-6th-gen-core-family-spec-update.html

그것은 구체적 TSX을 사용하여 예측 시스템의 동작을 초래할 수 있다고. 그러나 BIOS가 수정 사항을 수행 할 수도 있음을 알려줍니다. 그러나 문제는이 수정 사항이 수반하는 것입니다. 그것은 Haswell 마이크로 코드 "수정"처럼 TSX를 모두 비활성화합니까? 인터넷 검색은 "SKL105"결과가 없으므로 커뮤니티가 일반적으로 알지 못하는 것 같습니다.

일부 사용자

는 점점 TSX 기능을 발견했습니다 "steathily"장애인 (그러나 겉으로 위의 에라타 인식되는) 때문에, CPU를 특정 변종이 영향을받는 경우

https://www.reddit.com/r/hardware/comments/44k218/intel_disables_tsx_transactional_memory_again_in/

그것은 이상하다 하나는 모두 동일한 마이크로 아키텍처를 공유하므로이 버그의 영향을 똑같이 겪을 것이라고 가정합니다.

다른 방식으로 그런 "수정"마이크로 코드가 작동 할 수 있고 더 은밀 할 수 있습니다 : 나는 그것이 TSX의 존재를 드러내는 마이크로 코드 업데이트를 만드는 것이 가능할 것이라고 생각합니다. 여전히 사용 가능)하지만 새로운 TSX 명령어의 구현을 "더미 구현"으로 대체합니다. 실제로는 잠금을 해제하지 않고 본질적으로 코드를 구식으로 실행함으로써 버그를 피할뿐만 아니라 TSX가 성능을 향상시킬 수도 있습니다 제공. 이러한 일이 발생했는지 확인하는 유일한 방법은 성능 측정을 통해서입니다.

누구나 Skylake의 TSX 상태에 대한 자세한 정보가 있습니까? 어쨌든 더 이상 정보가 공개되지 않고 어떤 것이 영향을 받고 무엇이 그렇지 않은지 추측해야한다는 것이 이상합니다. 실제로 기능을 사용하면 안전합니다.

나는 6700K를 가지고 있으며 기능이 아직 남아 있습니다. 그러나 이것은 또한 BIOS 제조사가 마이크로 코드 업데이트를 가져 왔는지 여부와 성능을 실제로 측정하지 못했는지에 따라 달라 지므로 아직이를 비활성화 할 수는 없습니다. 이전 단락.

+1

그런데 SKL-054 (같은 정오표에 있음)에는 TSX도 포함되어 있습니다. SKL-105에 대한 내 지위의 동일한 상태/의견/질문이 SKL-054에도 적용됩니다. – Morty

답변

5

필자가 아는 한, 2016-07-14에서 최신 공용 마이크로 코드 업데이트 팩으로 수정되었습니다. Skylake의 경우 Skylake 기본 마이크로 코드 (프로세서 서명 0x406e3 및 0x506e3)의 버전 0x9d/0x9e가됩니다.

이 새로운 TSX 에라타는 Broadwell에서도 나타납니다. 새로운 Skylake 마이크로 코드 업데이트와 함께 게시 된 Broadwell * * 마이크로 코드 업데이트의 새 배치를 통해 수정 된 것으로 가정합니다.

부트 로더가 보낸 데이터를 통해 마이크로 코드를 업데이트하는 Linux의 경우, 업데이트를 적용하는 것은 간단하며 대부분의 (심각한) 배포판에서 이미 사용할 수 있습니다. Windows의 경우 EFI/BIOS 업데이트를 시스템 공급 업체에 알려야합니다.

죄송합니다. 최신 Skylake/Broadwell 마이크로 코드에서 TSX를 테스트하여 잠금 장치가 해제되어 있는지 또는 항상 실패하고 있는지를 확인할 방법이 없습니다. TSX를 사용 중지하는 경우 L3 효과에 실제 영향이 있음을 이해해야합니다 (이 무료입니다!) 및 전력 소비를 줄이려면 L3이 더 작은 BIOS에서 TSX를 BIOS에서 비활성화하는 것이 좋습니다.

흥미롭게도 TSX "치킨 비트"에 대한 정보는 공개되지 않았으므로이를 비활성화 (또는 다시 활성화)하는 방법에 대해서는 알지 못합니다.

+1

실제로 사용하지 않더라도 전원을 사용하는 TSX에 대한 참조는 있습니까? 또한 L3 효과를 줄이기 위해? 나는 더 많은 것을 읽고 싶다. –

+0

TSX의 작동 방식에 대한 문서를 통해 롤백을 수행하기 위해 트랜잭션 상태를 보존하기 위해 캐시를 분할하는 것이 명확합니다. 이것은 가장 공격적인 HPC의 외부에있는 누군가가 Xeons에서 알아 차릴 수있는 문제는 아니지만 적은 칩은 캐시가 훨씬 적습니다. 기능 자체에 의한 여분의 전력 사용은 너무 작을 수 있지만 트랜잭션 중에는 캐시를 제거하는 저전력 모드가 전혀 트리거 될 수 없으므로 인텔이 트랜잭션을 중단하거나 모드 변경을 차단해야합니다. 나는 참고 문헌을 가지고 있지 않다. TSX 논문과 SGX 보안 분석 서류를 찾는다. – anonymous

+2

내가 읽은 바로는, 트랜잭션을 수행하는 코어 L1 내부에서 일어난다. David Kanter의 [HSW writeup] (http://www.realworldtech.com/haswell-cpu/5/)에 따르면 L2조차도 L3뿐만 아니라 트랜잭션 적이 아닙니다. 그는 Haswell이 그것을 어떻게 구현할 것인가에 대한 그의 추측이 옳았다 고 말한다. 각각의 L1 캐시 라인에 대해 여분의 비트를 사용한다는 것이다. (그의 이전 기사 : http://www.realworldtech.com/haswell-tm/ 및 http://www.realworldtech.com/haswell-tm-alt/ 참조). Kanter는 TM은 그의 주요 전문 분야 중 하나이기 때문에 그 중 어느 것에도 중대한 오류가 없을 것이라고합니다. –

관련 문제