병렬 프로그래밍이 인간의 내적 조화, 소통, 그리고 온전한 삶에 대해 시사하는 바를 성찰합니다.
나는 An Introduction to Parallel Programming 을 계속 읽으면서, 프로세서들 사이의 소통, 인간들 사이의 소통, 그리고 개인의 자기 내부에서 이루어지는 소통 사이에 어떤 연결이 있다는 사실을 보지 않을 수 없다.
계산 능력의 증가는 우리가 인간 게놈을 해독하고, 의료 영상을 개선하며, 웹 검색을 가속하고, 이전에는 상상조차 할 수 없었던 문제들에 다가가도록 해주었다. 기후 모델링, 단백질 접힘, 신약 개발, 에너지 연구, 대규모 데이터 분석은 모두 막대한 계산 자원에 의존한다.
그러나 이 교과서가 전하는 더 깊은 교훈은, 프로세서를 더 많이 추가한다고 해서 자동으로 더 유용한 작업이 만들어지는 것은 아니라는 점이다. 문제는 먼저 여러 부분으로 나뉘어야 한다. 그 부분들은 서로 소통하고, 동기화하고, 작업량을 나누어야 한다. 하나의 프로세서만 과부하된 채로 다른 프로세서들이 기다리고 있을 수는 없다. 또한 모든 프로세서가 같은 자원을 놓고 끝없이 경쟁할 수도 없다. 이제 도전은 단순히 더 많은 힘을 만들어내는 일이 아니다. 우리가 이미 지닌 힘을 어떻게 조율할 것인가를 배우는 일이다.
어쩌면 인간에게도 같은 말이 적용될지 모른다.
한 사람은 지능, 감정의 깊이, 육체적 에너지, 기억, 창의성을 지니고도, 이 부분들이 함께 일할 수 없을 때 여전히 압도될 수 있다. 마음은 한 가지를 말하는데 몸은 다른 것을 전달할 수 있다. 말은 그 둘 모두를 감출 수도 있다. 기억들은 끝나지 않은 프로세스처럼 계속 실행되며, 원래의 사건이 지나간 한참 뒤에도 주의를 소모할 수 있다.
Zen Mind, Beginner’s Mind 에서는 온전한 활동을 완전히 타오르고 불필요한 흔적을 남기지 않는 불에 비유한다. 이것은 과거를 잊거나 고통스러운 사건이 결코 일어나지 않았던 것처럼 가장하라는 뜻이 아니다. 오히려 어떤 경험이 남긴 잔재에 끝없이 매달리기보다, 그 경험이 충분히 느껴지고, 이해되고, 마침내 완결되도록 허용하는 것을 뜻할지도 모른다.
우리가 얼마나 많은 경험들로 인해 계속 소모되고 있는가, 그 경험들이 끝까지 타오르도록 한 번도 허락받지 못했기 때문은 아닐까?
정직한 소통은 동기화의 한 형태다. 우리의 생각, 감정, 몸, 말이 진실하게 소통할 때, 그것들은 함께 움직이기 시작할 수 있다. 서로에게 정보를 감출 때 그 결과는 내적 경합이 된다. 불안, 탈진, 혼란, 그리고 결국 번아웃이다.
병렬 프로그래밍은 서로 분리된 많은 프로세서가 개별 프로세서이기를 멈추지 않으면서 어떻게 하나의 시스템으로 일할 수 있는지를 묻는다. 선은 인간의 삶에 대해 이와 비슷한 질문을 던지는 듯하다.
어쩌면 우리의 가장 큰 한계는 힘의 부족이 아니라, 자기 자신을 거슬러 분열된 힘인지도 모른다..