본문 바로가기

Gos&Op

빈곤의 최적화, aka 꼼수

아침에 급하게 페이스북에 적은 글에 설명/내용을 추가합니다.

너무나 긴 시간동안 사람들은 빈곤에 적응해왔다. 어쩌면 인간의 역사란 빈곤의 역사였다. 최근에 그런 빈곤 상태가 일시에 (일부에게는 또는 특정 분야에서는) 해갈되었지만, 여전히 많은 부분에서 빈곤 상태에 있다. 앨빈 토플러는 그의 책 '부의 미래'에서 현대 사회의 변혁의 동인으로 3A, 즉 자동화 Automation 아시아 Asia 그리고 풍요/과잉 Abundance를 들었지만, 여전히 사람들은 빈곤에 더 익숙하다. 그래서 빈공의 경계를 넘은 분야에서는 풍요에 제대로 적응을 못하는 경우도 발생하고 있다. 빈곤에 적응했다는 것은 주어진 환경에서 최적화되어있거나 그런 솔루션을 자연스레 찾으려 한다는 것이다.

간혹 TV를 보면 '입금되면 바로 갑니다'라는 연예인들의 우스게 소리나 '받은만큼만 일한다'라는 직장인들의 애환도 결국 빈곤에의 최적화 결과의 좋은 예다. 오랜 시간동안 학습된 결과로 인간은 새로운 환경을 개척 Exploration 하는 것보다는 주어진 환경에서 최적화, 효율화 Exploitation 하는 것에 자연스레 반응한다.

회사에서의 많은 것들도 이런 빈곤 최적화의 규칙을 따르는 것같다. 서버 공간이 부족하면 새로운 서버를 확충하는 것보다, 그 공간 내에서 최적화시키고 조금이라도 불필요하거나 오래된 데이터는 미련없이 버리게 된다. 그렇게 하는 것이 low-cost 리더십이라고 장려하기까지 한다. 프로그램/알고리즘을 구현하면서 속도가 느리다 싶으면 데이터 사이즈를 줄이거나 복잡하지만 더 나은 알고리즘보다는 열등하지만 빠르게 결과를 내는 것을 취하게 된다. 업무 환경에서도 직원들은 지원의 빈곤에 적응해서 그 틀 안에서 최선의 결과를 내려고 아등바등한다. 새로운 세상이 있다는 것을 전혀 인식하지도 못한 채로... 어떠한 경우든 최적화는 여전히 유효하다. 서버의 용량과 속도가 개선되었다고 해서 최적화 코드가 불필요한 것이 아니다. 그러나 최적화가 최우선일 수도 없다.

아침에 프로젝트 내용을 공유하는 시간이 있었다. 현재 처한 가장 큰 문제로 서버 및 스토리지가 부족하다는 실무자의 의견이 나왔다. 그것을 해결해줄 수 있는 사람은 바로 그 문제에 대한 즉답을 하지 않은채로, 서버 말고 다른 문제는 없었어요?라고 둘러 묻는다. 일단 서버/스토리지부터 확보한 다음에 다른 문제에 접근하는 것이 맞을 듯했는데도...

좋은 것을 얻고 싶으면 좋은 환경을 마련해주는 것이 우선이다. 물론 좋은 환경이 항상 좋은 결과를 보장하지는 않는다. 그러나 가능한 환경의 제약은 제거한 후에 죽이 되든 밥이 되든 일을 시작해야 한다. 좋은 것을 가져본 경험이 없기에, 또 그 환경에서 노동자/프로그래머들은 야근을 하고 머리를 쥐어짠다. 좋은 환경에서 좋은 결과가 당장 나오지 않았다면, 그 환경에 적응해서 더 나은 상상력을 발휘할 시간적 여유를 줘야 한다.

맞는 얘긴지는 모르겠지만, 구글에 엔지니어가 입사하면 처음부터 테스트 서버 수백/수천대를 사용할 수 있는 권한을 준다고 한다. 그런 환경에서 만들어졌던 것이 대용량 분산 처리 시스템이었고, 최근에는 딥러닝 Deep Learning이라는 AI에서는 거의 버려졌다고 생각했던 ANN이 되살아났다. 아마존의 추천시스템이 제대로 작동할 수 있었던 이유도 그런 환경적인 뒷받침이 있었기 때문이라 생각한다. 서버 10대, 20대를 추가하는 것에도 벌벌 떠는 환경에서 새로운 혁신적인 기술을 꿈꾸는 것은 어불성설이다. 풍요의 시대로 접어들었다고 말하지만, 우리의 인식은 전혀 풍요에 적응할 준비가 되어있지 않다. 그저 빈곤에 익숙해져서 그 속에서 최적화라는 꼼수에 능해지고 있다.

아침에 페이스북에 글을 적을 때는 굉장히 영감이 있었는데, 하루를 보내고 나니 그때의 감정이 많이 희석되어 버렸다. 그래도 사실이 바뀐 것은 아니다.

---

글을 공개한 이후에 생각난 것이 있어서 추가합니다. 제가 처음 디카를 구입한 것은 2000년도였고, 당시로는 꽤 큰 화소인 300만 화소인 소니 505V였습니다. 당시에는 메모리 가격이 비싸서 처음에 64메가 메모리스틱을 구입했습니다. (나중에 2003년도에 128메가를 추가로 구입) 카메라의 성능은 300만화소였지만, 풀사이즈로 찍으면 100장정도 밖에 못 찍기 때문에 대부분의 사진은 그것보다 작은 사이즈로 찍었습니다. 같은 이유로 같은 장소/사물을 여러 번 찍을 수 없었기 때문에 한번 찍은 사진을 어떻게든 살려볼려고 포토샵을 공부했던 기억이 있습니다. 그런데 지금 사용하는 캐논 5DMk3에는 이런십육기가 CF메모리와 같은 사이즈의 SD메모리가 꽂혀있습니다. 그래서 총 32기가를 사용중입니다. 시중에는 그냥 32기가나 64기가 메모리도 큰 비용없이 쉽게 구입할 수 있습니다. (10여년 사이에 용량이 1000가 커졌습니다.) 요즘에는 (RAW파일로는 사진을 찍지 않지만) 그냥 가장  2300만 풀사이즈로만 사진을 찍고, 또 같은 장소/사물을 여러 장 찍습니다. 한번에 수십, 수백장의 사진을 찍고 그 중에서 가장 잘 나오면 몇 장의 사진만 간단한 리터칭 (contrast 조절 및 프레임 조정)해서 웹에 올립니다. 카메라/메모리의 관점에서 본 빈곤의 시대와 풍요의 시대의 대비입니다. 요즘에도 2000년대 초반처럼 사진을 찍고 리터칭하고 있다면 어땠을까?라는 생각이 문득 납니다.

페이스북 페이지: https://www.facebook.com/unexperienced

반응형