M1칩이 탑재 된 맥북에서 Intel 프로세서 Java...?
Mac M1칩은 분명 Arm 프로세서 기반인데..
현재 M1칩이 탑재된 맥북프로를 사용중인데 사용하는 자바가 Intel칩 프로세서로 동작하는것을 확인했다.
가능했던 이유
현재 M1칩에서는 기존 Intel프로세서기반 응용프로그램을 지원하기 위해 Rosetta(로제타)를 이용해 Arm 프로세서 환경에서 동작이
가능하게끔 변환하여 동작한다. (카카오톡은 아직 Arm프로세서를 지원하지 않는걸로 알고있습니다^^....)
Arm프로세서 기반 Java를 설치하자.
현재 Azul이란 사이트에서 Zulu OpenJDK를 지원하고있다. 최신버전까지 지원하니 변경하는것도 괜찮을것같다.
Zip, dmg, tar.gz 형태로 지원해주는데 dmg로 설치하면 간단설치가 가능하다.
https://www.azul.com/downloads/?version=java-18-sts&os=macos&architecture=x86-64-bit&package=jdk
Downloads
According to the Gartner report, “by 2025, more than 70% of Java applications will be deployed on third-party Java runtimes, up from 30% in 2019.”
www.azul.com
설치 후 변경된 Java로 프로젝트를 실행하면...
종류가 Apple로 변경 된것을 알수있다.
변경 후 테스트
실제로 Arm 프로세서와 Intel 프로세서로 Java 프로그램이 동작될때의 성능 차이점이다.
테스트 방식은 ..
// System.currentTimeMillis(); --- 현재 시간을 밀리초(ms, 천분의 일초) 단위로 반환
long sTime = System.currentTimeMillis(); // 시작시간
Map hash = new HashMap<String,String>();
for (int i = 0; i < 10000000; i++) {
hash.put("a","a");
}
// (현재시간 - 시작시간) / 1000
Double sec = (System.currentTimeMillis() - sTime) / 1000.0;
System.out.printf("소요시간 --- (%.4f초)%n", sec);
단순히 HashMap에 데이터를 백만번 저장했다..^^
정확한 테스트 방식이 아니며, 성능테스트를 더 자세히 할순 있으나, 필요할때 해봐야지 ㅎㅎ..
'일상' 카테고리의 다른 글
[Cloud]OCI(OracleCloudServer)사용이유 (0) | 2023.01.28 |
---|