ESOS 연구원 여러분!
2018년 7월 3일 화요일 AT&T에 근무하는 장민성 박사님의 세미나가 한양대학교 FTC 402호에서 개최되었습니다.
발표 주제 : Building the Next Generation Internet Router: Practical GPU Based Packet Processing
Abstract : The telecom industry is transitioning from traditional network hardware to software defined networking on commodity hardware. Many key packet processing algorithms can be made highly parallel and have already been ported to leverage GPU parallel computing. Numerous studies show large gains in the price/performance ratio, but simplifying assumptions about the data path, often made when evaluating parallel packet processing algorithms on GPUs, cast doubt on the achievable benefits of parallel packet processing in a real world production environment. In order to facilitate evaluations of packet processing on GPUs, many studies isolate the computational components and ignore the time intensive process of transferring data between the NIC, CPU and GPU. Our research focuses on an end-to-end solution for GPU packet processing at line speeds above 10 Gbps that includes streaming data from the NIC directly into the GPU, processing the packets, and streaming the results back out onto the network. By analyzing and optimizing the entire packet processing pipeline, the telecommunications industry can reap the enormous price/performance gains promised by using GPUs to process network packets.
이번 세미나는 ESOS 연구원 뿐만아니라 다른 연구실에서도 많이 참여해주었습니다.
장민성 박사님께서 발표하신 내용에 많은 분들이 흥미를 가져 다양한 질문들이 나왔습니다 🙂
Q. 네트워크 카드가 받은 패킷을 호스트 메모리를 거치지 않고, 바로 GPU로 전달하는데, 호스트 메모리를 거치지 않고, 다른 장치로 데이터를 전송하는게 가능한가요? 네트워크 카드에 패킷을 위한 작은 버퍼가 있는 것인가요?
A. 네, 네트워크 카드에 DMA와 작은 버퍼가 있어서, 네트워크로부터 받은 패킷을 작은 버퍼에 저장하고, DMA가 버퍼에 있는 내용을 GPU에 전달합니다.
Q. GPU에서 돌아가는 커널이 idle 상태일 때, 따로 특별한 동작을 하나요?
A. 아니요. 따로 특별한 동작을 하지는 않습니다. 리소스를 사용하지 않고, 네트워크 카드의 Doorbell 신호를 기다리면서 대기만 합니다.
Q. CPU 가상화와 같이 GPU도 일부분을 나누어서 가상화를 하면 좀 더 효율적으로 사용할 것 같은데 혹시 이 부분에 대해서는 어떻게 생각하나요?
A. 물론입니다. 저희는 NVIDIA와 협업을 통해서 GPU 가상화 관련 연구를 진행하고 있습니다. 최근에 나온 GPU 가상화 관련 논문도 리딩을 해보았지만 아직 현업에서 사용할만한 결과는 아니라고 생각합니다. 제 생각으로는 곧 도입이 될 것이라고 생각합니다.
끝으로, 장민성 박사님께서는 System 분야의 중요성에 대해 다시 한번 언급해주셨습니다.
System은 Application과 Hardware를 잘 연결해주는 다리같은 역할이다. 즉, Application이 아무리 좋아도 (예를 들면, Facebook) system없이는 돌아가지 않는다.
최근들어 현업에서는 system 개발자를 많이 요하고 있다. 하지만 system을 연구하고 있는 사람이 정말 드물다. system은 어렵지만 만약 공부한다면, 훨씬 많은 이익이 생길 것이다.
system에 자부심을 가지고 열심히 공부하기를 바란다.
ESOS 여러분! 장민성 박사님 말과 같이 system 연구에 자부심을 가지고 앞으로 연구에 매진하기 바랍니다. 우리의 미래는 충분히 밝습니다! 🙂