인텔이 GCC 컴파일러를 업데이트하여 프로그래머가 구형 프로세서와 아직 출시되지 않은 프로세서 모두에 최적화된 코드를 생성할 수 있도록 했습니다. 약속은 명확합니다: 최신 하드웨어에서 성능 저하 없이 보장된 호환성. 이는 새 애플리케이션이 느려지지 않으면서도 장비의 수명을 몇 년 더 연장할 수 있다는 의미로 들립니다. 하지만 현실은 더 복잡합니다.
문제는 기술적이지 않습니다: 개발자의 의지입니다 🧠
GCC 컴파일러의 새로운 기능은 실행되는 CPU에 따라 가장 효율적인 코드 경로를 자동으로 선택하는 바이너리를 생성할 수 있게 합니다. 즉, 프로그램이 2014년의 Haswell에서든 2025년의 Arrow Lake에서든 동일하게 잘 실행될 수 있다는 의미입니다. 그러나 이 기술을 구현하려면 개발자가 각 마이크로아키텍처의 특정 명령어를 알고, 중요한 함수의 여러 버전을 작성하며, 테스트에 시간을 할애해야 합니다. 자동적이거나 간단한 과정이 아닙니다.
계획된 교체의 역설 💸
2018년형 PC가 여전히 원활하게 작동할 수 있다고 생각하는 것은 멋집니다. 하지만 그렇다면 누가 Windows 12와 의무 연간 구독이 포함된 새 모델을 구매하겠습니까? 소프트웨어 산업은 낡은 기기를 유지하는 것이 아니라 새로움을 판매하여 수익을 창출합니다. 인텔이 도구를 제공한다고 해서 프로그래머가 이를 사용한다는 의미는 아닙니다. 사용하는 것은 무료이지만, 판매로 이어지지 않기 때문입니다. 결국, 결정권은 교체 비용을 지불하는 사람이 아니라 교체로 이익을 보는 사람에게 있습니다.