Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 프라파손
- mf642cdw
- 엘리스배열
- magicsculpt
- driverless
- 건프라
- 키보드
- emacs
- 벤치마크
- mistel md600 alpha
- Reflection
- 터미널
- Go
- 리플렉션
- 양자역학
- 이맥스
- 체리적축저소음
- go언어
- nil
- 바로코
- 다이어트
- Go 언어
- md600alpha
- 패널라인
- 스플릿키보드
- mopria
- Golang
- 고양이책
- 음각몰드
- Griffiths
Archives
- Today
- Total
Meandering Trajectory
Go 언어 - 벤치마크 본문
Go 언어를 배운지 얼마 안 돼서 무언가를 말하기는 조심스럽지만... 몇몇 장단점이 눈에 띈다.
Go 루틴이라든지 채널 같은 동시성 프로그래밍 언어를 위한 기능들은 신선하다. 그리고 네이티브 바이너리로 컴파일되는 언어치고는 방대한 양의 라이브러리를 제공한다는 점 역시 좋아 보인다. 반면 너져분하게 느껴지는 문법이라든지 import한 패키지의 코드가 모두 실행 파일에 포함 1되어 실행파일 크기가 지나치게 커진다든지 하는 문제는 실망스럽다. 2
그러던 와중에 Go 언어로 작성한 프로그램의 성능이 어떨지 궁급해서 좀 찾아봤다. 공정한 비교(?)를 위해 Garbage Collection (GC)을 이용하는 Java와 비교한 벤치마크를 살펴봤다. 놀랍게도 네이티브 코드로 컴파일되는 언어임에도 결과는 그리 신통치 못하다.
위 벤치마크의 결과를 보면 10개의 테스트 중 5개는 Go가 앞서고 1개는 비슷하고 4개는 뒤진다. 이 중 성능 차이가 2배 이상 벌어지는 테스트를 보면 특이한 점이 눈에 띈다. 바로 메모리 사용량이 모두 100KiB가 넘는다는 것.
조심스럽게 GC 알고리즘과 연관된 원인르로 생기는 현상 아닌가 하는 추측을 해본다.
'컴퓨터 > GoLang' 카테고리의 다른 글
Go 채널 (0) | 2017.08.09 |
---|---|
Go: 리플렉션 #2 (0) | 2017.07.16 |
Go: 리플렉션 #1 (0) | 2017.07.15 |
Go 패키지의 정체 (0) | 2017.06.29 |
Go 언어: 환경변수 설정 (0) | 2017.05.08 |
Comments