통상적으로 프로그래밍시 언어별로 제일 빠른건 포트란>C>C++>java>파이썬으로 알고 있습니다. 그런데 만약에, 저 언어중 하나로 쓰인 스크립트 파일을 호출하는 방식으로 동작하는 프레임워크 상에서 사용한다고 가정했을때, 똑같이 퍼포먼스 차이가 극단적으로 날까요? 테스트 플랫폼은 ROS2로, 로봇 제어 프레임워크입니다. 운영체제는 우분투 22.04LTS, 사용 SBC는 엔비디아 젯슨이나 라즈베리 파이, 비글본 시리즈 중 하나일 것 같습니다. 로봇인만큼 퍼포먼스가 눈에 띌 정도로 민감해서 어떤 언어로 접근해야 할지 고민입니다.
프로취준러
pythonµµ °ú°Å º¸´Ù ÀÛµ¿¼º´ÉÀÌ ¸¹ÀÌ ¿Ã¶ú°í(ROS2 ¶ó°í ÇϽôÏ)
javaµµ ¸Þ¸ð¸®¸¸ ³Ë³ËÇÏ´Ù¸é ¹®Á¦ ¾øÁö ¾ÊÀ»±î ÇÕ´Ï´Ù.
´Ù¸¸ ·Îº¿ÀÎ ¸¸Å ¹Î°¨ÇÏ´Ù°í ÇϽôµ¥ µö·¯´×À» ÅëÇÑ ¹ÝÀÀ¼ºÀÌ °¡Àå ´À¸° ÂÊÀ̶ó
±×°Í º¸´Ù¸¸ ºü¸£°Ô ¿òÁ÷ÀÌ¸é µÇ´Â°Å¶ó ¾ð¾îº° Â÷ÀÌ´Â º°·Î ¾øÀ»°Å¶ó »ý°¢ÇÕ´Ï´Ù.
Á¬½¼À» ¾²½Ç°Å¸é ±× Ç÷§Æû¿¡¼ ¾î¶²½ÄÀ¸·Î ½Ã½ºÅÛÀ» ±¸¼ºÇÒÁö°¡ ¼±°á°úÁ¦Áö
¾ð¾î ¼±Á¤ÀÌ ¼±°á°úÁ¦´Â ¾Æ´Ï¶ó°í »ý°¢ÇÕ´Ï´Ù.
¿¹¸¦ µé¾î Ä¿ÇÇ ¸¸µå´Â ±â°è¶ó¸é ¹Ì¹ÌÇÏ°Ô ¸ØÄ©°Å¶ó´Â °Ç ÀüÇô ¹®Á¦°¡ ¾ÈµÉ°Å¶ó ÀÚ¹Ù¸¦ ¾²´õ¶óµµ ¹®Á¦ ¾øÀ»°Å°í¿ä. À¯Áöº¸¼ö¿¡ ÃÐÁ¡À» µÎ¸é µÉ °Í °°½À´Ï´Ù.
»ý¸í°ú °ü·ÃµÈ ·Îº¿À̶ó¸é ¹«Á¶°Ç C³ª ¼Óµµ¸é¿¡¼ µ¿±ÞÀÎ ¾ð¾î ½á¾ßÁ¶.
ÀÚ¹Ù´Â °¡»ó¸Ó½ÅÀ¸·Î µ¹¾Æ°¡´Â°Å ¶§¹®¿¡ ÆÛÆ÷¸Õ½º ±î¸Ô°í, ÆÄÀ̽ãÀº ÀÎÅÍÇÁ¸®ÆÃÀ̶ó(±×¶§±×¶§ Äڵ带 Çؼ®Çؼ ½ÇÇà) ÀÚ¹Ùº¸´Ù ´õ ´À¸³´Ï´Ù.
¹ÝÀÀ¼Óµµ°¡ ¸Å¿ì Áß¿äÇÏ´Ù¸é C/C++¿¡ ¾î¼Àºí¸® ¼¯¾î½á¾ß ÇÒ°Ì´Ï´Ù. Çϵå¿þ¾î À̺¥Æ® Á÷Á¢ ¹Þ¾Æ¾ß ÇÏ´Â ºÎºÐ¿¡ ¾î¼Àºí¸®, ·ÎÁ÷ºÎºÐ¿¡ C/C++