개발자

"성능 최대 20% 향상" 구글, '고' 1.19 버전 공개

Paul Krill | InfoWorld 2022.08.05
구글이 ‘고(Go)’ 프로그래밍 언어의 최신 버전을 선보였다. 이번 업데이트는 최근 추가된 제네릭을 개선하고, 향상된 메모리 모델을 선보였다. 지난 8월 2일(현지 시각) ‘고 1.19’이 공개됐다. 개발팀에 따르면 제네릭 개발은 해당 커뮤니티에서 제기된 몇 가지 문제 그리고 성능 개선(일부 제네릭 프로그램에서 최대 20% 성능 향상)을 해결하는 데 초점을 맞췄다. 제네릭 기능들은 지난 3월 출시된 고 버전 1.18에서 도입됐다. 
 
ⓒ Getty Images Bank

아울러 고 메모리 모델은 동기화/원자 패키지 동작을 명시적으로 정의한다. 동기화 알고리즘을 구축하기 위한 저수준 원자 메모리 기본 요소도 제공한다. 발생 이전(happens-before) 관계의 공식 정의는 C, C++, 자바, 자바스크립트, 러스트, 스위프트에서 사용되는 메모리 모델에 맞게 수정됐다. 기존 프로그램을 영향을 받지 않는다고 개발팀은 전했다. 

메모리 모델 업데이트 외에도 atomic.int64atomic.Pointer(T) 등 새로운 유형이 동기화/원자 패키지에 지원돼 원자 값을 더 쉽게 사용할 수 있다. 고 1.19는 이곳(go.dev)에서 다운로드할 수 있다. 고 1.19의 기타 개선사항 및 새로운 기능은 다음과 같다. 
 
  • 가비지 수집기에 소프트 메모리 제한이 추가됐다. 이 제한을 통해 고 프로그램을 최적화해 메모리 양이 할당된 컨테이너에서 가능한 한 효율적으로 실행되도록 할 수 있다.
  • 스택 카피라이팅을 줄이기 위한 코루틴 스택의 동적 크기 조정, 유닉스 시스템에서의 자동 추가 파일 설명자 사용, x86-64 및 Arm 64 상에서의 스위치 스테이트먼트용 점프 테이블, Arm64에서의 디버거 주입 함수 호출 지원이 지원된다. 
  • 메소드 선언의 형식 매개변수가 수정됐다. 기존 프로그램은 영향을 받지 않는다.
  • 이제 문서 주석에서 링크, 목록, 제목 구문을 지원한다. 특히 대규모 API를 갖춘 패키지에서 명확한 문서 주석을 작성할 수 있다. 
  • 보안을 위해 os/exec 패키지는 PATH 룩업에서 더 이상 상대 경로를 고려하지 않는다. 
  • 대상 OS가 유닉스 계열 운영 체제일 때 새로운 빌드 제약 조건인 unix가 충족된다. 

ciokr@idg.co.kr
 

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.