2021-03-03 뉴스 모음
2021-03-03 뉴스 모음
나는 어떻게 GTA Online 게임 로딩시간을 70% 줄였는가 (nee.lv)
병목현상을 일으키는 아주 간단한 2개의 함수를 수정해서 6분 걸리던 GTA Online 로딩시간을 1분 50초대로 줄였다고 합니다. 공식 패치는 아니고 글쓴이가 dll 후킹으로 문제되는 2개 함수만 고쳐 실험한 결과네요. 2013년 말 출시때부터 지금까지 GTA Online 에서만 1조원이 넘는 수익을 올린 락스타게임즈가 이 간단한 문제를 해결을 안하고 있었다니 좀 너무했다 싶네요.
- Json parsing with sscanf
- 게임 코드는 무려 10MB 짜리 아이템 카탈로그 json 파일을 파싱하는데 각 항목(무려 약 63000개)마다 sscanf 함수가 호출했고, sscanf 함수가 호출하는 strlen 함수는 문자열의 길이를 구하기 위해 파일 맨 끝까지 한글자씩 읽었다.
- 10MB 문자열을 연달아 63000번 읽느라 1분 30초를 더 쓰고 있었다.
- Hash key not used
- 위의 내용에 바로 이어, 파싱했던 아이템 정보를 배열에 넣을 때 "배열 시작 위치부터" 순차 탐색을 통해 값을 삽입할 위치를 찾고 있었다.
- 저장 내용이 중복되는지 확인하기 위해 해시값을 쓰고 있는데도 해시맵을 사용하지 않아 삽입 위치를 찾는데만 "(63000^2+63000)/2" 번의 확인 과정을 거치느라 1분 40초를 더 쓰고 있었다.
https://news.hada.io/topic?id=3813
왜 5분전 코드가 보기 어려운가
- 자바 개발자들은 평균 6분마다 코드를 역추적 -> 실행취소
- 다른 연구 참가자는 실행취소/다시실행을 5분동안 40번 실행. 변경 도중 코드의 중간 상태를 보기 위함.
- 로컬 코드 버저닝을 사용해라
https://news.hada.io/topic?id=3803
30줄의 코드로 어떻게 27톤 발전기를 날려버리는가? (wired.com)
샌드웜이라는 해커 그룹은 역사상 가장 강력한 해커 그룹인데요. 2018년에는 평창 올림픽의 개막식과 동시에 IT 인프라를 모두 날려버렸고, ( 왜 이걸 알아차리지 못했냐면, 뒤에서 IT 인프라 직원분들이 하루 종일 복구를 해서 경기 당일에는 그냥 잘 됐습니다. 자세한 이야기는(https://www.wired.com/story/untold-story-2018-olympics-destroyer-cyberattack/ 로 확인해보세요.) 2016년에는 우크라이나의 전력망에 전례없는 공격을 퍼부었습니다. 단순히 정전이 아닌, 발전소 설비를 대상으로 하는 공격이었죠. 그런데 이미 이런 공격이 가능하다는 걸 증명한 건 꽤 됐습니다. 2007년, 북미 전기 신뢰성 공사에서 의뢰한 연구중 '외부 공격으로 발전소가 공격이 가능할까?' 라는 연구가 있었고. 해당 연구는 '가능하고. 필요한 코드는 30줄임.' 이라는 결론을 내보냈습니다.
- https://news.hada.io/topic?id=3809
- https://www.wired.com/story/how-30-lines-of-code-blew-up-27-ton-generator/
모자 먹은 CEO
미국-뉴질랜드 민간우주기업 로켓 랩의 CEO 피터 벡은 일전에 재사용 로켓을 만들지 않을 것이라며 "재사용 같은 걸 한다면 내 모자를 먹을 것"이라고 말한 바 있습니다. 이번에 재사용 로켓을 만드는 대가로 회사 굿즈 모자 조각을 믹서기에 갈아먹는 것으로 약속을 지켰습니다(...)
https://twitter.com/heartade_/status/1366904646246100993?s=20
인류가 털이 없어진 이유
이상희 교수님의 <인류의 기원>에서 읽은 바에 따르면.. 인류의 털이 솜털로 바뀐 것은 초식에서 육식으로 전환된 이후란 것이 유력한 가설이며, 털을 가진 사자와 같은 동물들이 털 때문에 더워하는 대낮에 활발하게 움직이기 위해 털이 솜털로 바뀐 것으로 추측된다고 합니다. 또한 이 때문에 자외선의 영향을 많이 받게 되자 멜라닌 색소가 많은게 유리해져 피부가 검게 되었으므로, 아프리카에서 등장한 인류의 조상이 솜털화 -> 검은 피부 -> 세계로 이동이란 순서가 맞아보이게 됩니다. 그러면 수렴진화까지 갈 필요는 없게 되죠
https://twitter.com/udaqueness/status/1366919139361656833?s=20
새로운 연구에 따르면 온 세상(whole universe)은 거대한 신경망일 수 있음
화성에 간 프리저버런스 호에는 90년대 아이맥에 사용된 CPU가 들어있음
https://gizmodo.com/a-1990s-imac-processor-powers-nasa-s-perseverance-rover-1846380844