저희 회사에서 2PC간에 1:1로 이미지를 주고받아야 하는데,
이미지의 크기가 2~3기가정도 되고, 전송된 이미지는 곧바로 RAM에 저장되야 합니다.
전송이 완료되면 바로 영상처리와 검사하는 과정이 진행되야 해서 빠른 속도를 가진 RDMA통신을 알아보고 있습니다.
Mellanox의 connect-X4 NIC카드를 이용해서 통신하려고 하는데, 통신을 구현하는 방법을 아시거나 또는
어디에서 알아보면 좋을지 조언을 남겨주시면 감사하겠습니다!
저희 회사에서 2PC간에 1:1로 이미지를 주고받아야 하는데,
이미지의 크기가 2~3기가정도 되고, 전송된 이미지는 곧바로 RAM에 저장되야 합니다.
전송이 완료되면 바로 영상처리와 검사하는 과정이 진행되야 해서 빠른 속도를 가진 RDMA통신을 알아보고 있습니다.
Mellanox의 connect-X4 NIC카드를 이용해서 통신하려고 하는데, 통신을 구현하는 방법을 아시거나 또는
어디에서 알아보면 좋을지 조언을 남겨주시면 감사하겠습니다!
¼¹ö¿¡ HCA ¼³Ä¡ÇÏ°í ¸ðµâ ¿Ã¸®°í, SM ¿Ã¸®°í, IPoIB¿¡ IP ¼³Á¤
Çϸé ÀÏ´Ü ½ÃÀÛÀº °¡´ÉÇÕ´Ï´Ù.
¼¹ö°£¿¡ µ¥ÀÌÅÍ Àü¼Û, ¸Þ¸ð¸®¿¡ ¿Ã¸®±â µîÀº ÀüÇô ´Ù¸¥ µµ¸ÞÀÎ ÀÔ´Ï´Ù.
Ȥ½Ã ±âÀçÇϽŠ³»¿ëµé(HCA¼³Ä¡, ¸ðµâ¿Ã¸®±â, SM¿Ã¸®±â, IPolB)ÀÌ ºñÀü°øÀÚµµ ¼öÇàÇÒ ¼ö ÀÖ´Â ºÎºÐÀϱî¿ä??
±× ´ÙÀ½À» Áö´ë·Î ÇÏ·Á¸é Á» ¾î·Æ½À´Ï´Ù
Mellanox´Â ÇöÀç Nvidia ¿¡ Èí¼öµÇ¾ú½À´Ï´Ù..
µû¶ó¼ ±â¼ú¹®Àǵç Á¦Ç°¹®Àǵç Nvidia KOREA³ª Nvidia KOREA ÃÑÆÇ ÂÊ¿¡ ¹®ÀÇÇÏ½Ã¸é °Å±â¼ ¹æÇâÀ» Á¦½ÃÇÒ ¼ö ÀÖÁö ¾ÊÀ»±î »ý°¢µË´Ï´Ù..
Mellanox Ä«µåµéÀº ¸®Å×ÀÏÀº °ÅÀÇ ½ÃÀå¿¡¼ º¸±â Èûµé°í º¥´õ¿¡ OEMµÇ¾î ÀÖ´Â °æ¿ì°¡ ¸¹À¸¸ç
°³ÀÎ »ç¿ëÀÚµéÀº eBay °°Àº °÷¿¡¼ ±¸ÀÔÇؼ »ç¿ëÇÏ´Â °æ¿ì°¡ ¸¹°í
ȸ»ç³ª Çб³ °°Àº °÷¿¡¼´Â ¿¾³¯ºÎÅÍ Á¸ÀçÇÑ ±¹³» ¸î¸î Mellanox ¸®¼¿·¯·Î ºÎÅÍ Á¦Ç°À» °ø±Þ ¹Þ¾Æ¿Ô½À´Ï´Ù..
RDMA´Â ĨÀÌ ½ºÅ丮Áö¿¡¼ CPU°³ÀÔ¾øÀÌ Á÷Á¢ Àü¼ÛÇÏ´Â °Çµ¥, ·¥¿¡ ÀÖ´Â °É º¸³»´Âµ¥´Â µµ¿òÀÌ ¾È µÉ °Í °°½À´Ï´Ù.
BlueField2 Å×½ºÆ® ÇÒ ¶§ ½ºÅ丮Áö¿¡ ÀÖ´Â ÆÄÀÏÀ» ÁöÁ¤ÇÏ¸é ±×°É DPU°¡ ÀÚµ¿Àü¼ÛÇÏ´Â °É ÇØ ºÃ´Âµ¥.. ±×°Ô RDMA¶ó »ý°¢Ç߳׿ä.
RDMA´Â ¸Þ¸ð¸®¿¡ ÀÖ´Â °É DPU°¡ Àü¼ÛÇÏ´Â °ÍÀ̱º¿ä. Á¦°¡ Çß´ø °Ç ¹¹¿´À»±î¿ä? ¿ù¿äÀÏ¿¡ Çѹø È®ÀÎÇØ ºÁ¾ß µÇ°Ú³×¿ä.
2~3 ±â°¡¸éÀº nvme ½ºÅ丮Áö·Î Á¤»óÀûÀÎ ¼Óµµ¸¦ ³»¾îÁÙ ¼ö ÀÖ´Ù¸é 10G·Î ¿¬°á ½Ã 2~3ÃÊ À̳»·Î ²ø¾î¿À°Å³ª ³×Æ®¿öÅ©¸¦ ÅëÇØ Àоî¿Ã ¼ö ÀÖ½À´Ï´Ù.
±×¸®°í Á¤¸» Àд ¼Óµµ°¡ Áß¿äÇÏ´Ù¸é ¼¹ö ±¸¼ººÎÅÍ »õ·Ó°Ô Á¤¸³ÇØ¾ß ÇÏÁö ¾ÊÀ»±î ÇÕ´Ï´Ù.
RDMAÀÇ °æ¿ì °í¼º´É ÄÄÇ»ÆÃ(HPC)¿¡¼ ¾²Àδٰí´Â ÇÏÁö¸¸ º¸¾È»óÀÇ ¹®Á¦°¡ ºÒ±ÅÁ®¼ ¾î¶»°Ô µÉÁö ¸ð¸£°Ú½À´Ï´Ù.
https://www.bodnara.co.kr/bbs/article.html?num=157569
https://www.ciokorea.com/news/178409
PCI-eÀÇ DMA°¡ º¸¾È ¹®Á¦¸¦ ÀÏÀ¸Å°´Â °æ¿ì°¡ ¸¹Àº °ÍÀº »ç½ÇÀ̶ó ÁÖÀÇ°¡ ÇÊ¿äÇÑ °ÍÀº ¸Â´Â °Í °°½À´Ï´Ù. ±×Àú.. ¾ø¾Ö±â º¸´Ù´Â ¾µµ¥¾ø´Â ½á¾ß ÇÒ °÷Àº ¾²µÇ ´õ º¸¾ÈÀ» °ÈÇÏ´Â ¹æÇâÀ¸·Î °¡´Â ¼ö ¹Û¿¡ ¾øÁö ¾ÊÀ»±î »ý°¢ÇÕ´Ï´Ù.
±×³É 10GÂ¥¸® Ä«µå¸¦ ¾çÂÊ¿¡ ²È¾Æ³õ°í Àü¿ë ÄÉÀ̺íÀ» ¿¬°áÇÏ°í ±âÁ¸ ÀÌ´õ³Ý ¿¬°áó·³ »ç¿ëÇÏ¸é µÇ´Â°Ç°¡¿ä??
ÀÌ °æ¿ì ¸ÞÀÎ º´¸ñÁöÁ¡Àº ³×Æ®¿öÅ© ´ë¿ªÆøÀÌ µÇ°ÚÁÒ.
¹°·Ð Á¶±ÝÀÌ¶óµµ ´õ ¼º´ÉÀ» Áã¾îÂ¥³»·Á¸é º¸¼Å¾ß ÇÏ´Â °Ç ¸ÂÀ» °Í °°Àºµ¥¿ä. ±×·±µ¥ ´çÀå ´õ Çö½ÇÀûÀÎ ¹®Á¦´Â RDMAº¸´Ù ¸µÅ© ¼Óµµ ȤÀº ½ÇÁúÀûÀÎ ³×Æ®¿öÅ© ¾²·çDzÀÌ ¾Æ´Ñ°¡ ÇÏ´Â »ý°¢ÀÌ µì´Ï´Ù.
±×·¸´Ù¸é, NICÄ«µå¸¦ 100GB, 200GB±ÞÀÇ ³ôÀº »ç¾çÀÇ Ä«µå¸¦ »ç¿ëÇÏ°í
RDMA¸¦ ¼³Á¤Çؼ Åë½ÅÇÑ´Ù¸é 2~3GÀÇ À̹ÌÁö¸¦ ºü¸£°Ô Àü¼Û ÇÒ ¼ö ÀÖÀ»±î¿ä??
³×Æ®¿öÅ© ´ë¿ªÆø¸¸ ³ôÀÎ´Ù°í ¸ðµç°ÍÀÌ ´Ù »¡¶óÁö°Å³ª Ç® ´ë¿ªÆøÀ¸·Î µ¿ÀÛÇÏÁö ¾Ê½À´Ï´Ù..
ÀüüÀûÀÎ È®ÀÎÀÌ ÇÊ¿äÇÏ°í ÀüüÀûÀ¸·Î Àß ¾Ë°í ¼Ö·ù¼ÇÀ» ÁÙ¼ö ÀÖ´Â »ç¶÷ÀÌ ÇÊ¿äÇѵ¥ Àß ¾øÁÒ..
¿äÁò ³ª¿À´Â ÀÌ´õ³Ý Ä«µåÁß¿¡ 40G ÀÌ»óµÇ´Â Á¦Ç°µéÀº ¸î¸îÀº RDMA¸¦ Áö¿øÇÏ´Ù°í ½ºÆÑ¿¡ ³ª¿ÀÁö¸¸
¾î¶»°Ô Áö¿øµÇ´ÂÁö ¾î¶² »óȲ¿¡¼ Áö¿øµÇ´ÂÁö »ç¿ë»ó¿¡ ÀÀ¿ëÀÌ °¡´ÉÇÑÁö ´Ù ¾Æ´Â »ç¶÷Àº µå¹´´Ï´Ù..
https://www.intel.co.kr/content/www/kr/ko/support/articles/000031905/ethernet-products/700-series-controllers-up-to-40gbe.html
±×³ª¸¶ Àú·± ±â¼úµéÀ» ÀçÀÏ ¸ÕÀú Àû¿ëÇÑ ¾÷ü°¡ ¸È¶ó³ì½ºÀÎÁö¶ó.. (±×¸®°í 10¤¾ À̻󿡼´Â ¸á¶ó³ì½º°¡ ÀçÀÏ ¼Ö·ù¼ÇÀÌ ¸¹°í ¿µµ Àû°Ô ³³´Ï´Ù..)
¸á¶ó³ì½ººÎÅÍ ¾Ë¾Æº¸´Â°Ô ÁÁ´Ù°í º¾´Ï´Ù..
±×¸®°í ±âº»ÀûÀ¸·Î ÄÄÇ»ÅÍÀÇ OS´Â ¼¹öOSÀÌ¿©¾ß ÇÕ´Ï´Ù..
Àú ±â¼úµéÀº º¸Åë °ÅÀÇ ¸ðµÎ ¼¹öÂÊ¿¡¼ ³ª¿Ô°í ±âº»ÀûÀ¸·Î´Â ¼¹öOS¸¸ Áö¿øÇÑ´Ù°í ºÁ¾ß ÇÕ´Ï´Ù..
ȸ»ç ÇÁ·ÎÁ§Æ®Àΰ¡¿ä?
workspace 1°³°¡ ´Ù ÃÔ¿µµÇ¸é ¹Ù·Î ´Ù¸¥pc·Î Àü¼ÛÇÏ°í ´ÙÀ½ workspace¸¦ ÃÔ¿µÇÏ´Â ½ÄÀ¸·Î ¹Ýº¹ÇÕ´Ï´Ù ´ÙÀ½ workspaceµµ ÃÔ¿µÀÌ ³¡³ª¸é Àü¼ÛÇÕ´Ï´Ù
¿øÇÏ´Â ¼º´ÉÀº 2¹ø° workspaceÀÇ ÃÔ¿µÀÌ ½ÃÀÛµÇ¸é ´Ù¸¥ pc°¡ ÀÌ¹Ì ÀÌÀü workspace¸¦ ¸ðµÎ ¼ö½ÅÇؼ
¸¶Ä¡ (1¹øPC¿¡¼)ÃÔ¿µÀÌ Á¾·áµÇ¸é ¹Ù·Î (2¹ø PC¿¡¼)°Ë»ç°¡ ½ÃÀ۵Ǵ °Íó·³ ±¸µ¿Çϱ⸦ ¿øÇÕ´Ï´Ù
±×¸®°í 10G ÀÌ´õ³Ý ½Ã¸®ÁîºÎÅÍ´Â ±âº»°ªÀÌ RDMA ±âº»µ¿ÀÛÀÔ´Ï´Ù. ±âº»µ¿ÀÛÀ̱⠶§¹®¿¡ µû·Î ¹¹ ÇÏ°í ¸»°í°¡ ¾ø¾î¿ä ¾Ë¾Æ¼ ±×³É µ¿ÀÛÇϴµ¥ µ¿ÀÛÇÏ´Â ÇÁ·ÎÅäÄÝÀº Á¤ÇØÁ³½À´Ï´Ù. SMBÇÁ·ÎÅäÄÝÀÌ ´ëÇ¥ÀûÀÌ¸ç ¿äÁòÀº Target ÇÁ·ÎÅäÄÝ¿¡ RDMA Àû¿ëÇÏ°í Àִ°Š°°´øµ¥ ÀÌ°Ç ºí·°¹æ½ÄÀÌ¶ó µ¥ÀÌÅ͸¦ ÁÖ°í ¹Þ´Â°Å¶ûÀº ´Ù¸£±â¿¡...
±×¸®°í CPU¿Í ¸Þ¸ð¸® ¼º´ÉÀÌ ÃÖ°í·Î »¡¶óÁà¾ß¸¸ 40G ÀÎÅÍÆäÀ̽ºµµ ±× ¼Óµµ¸¦ ¹ÞÃÄÁÝ´Ï´Ù. Ä«µå¸¸ ¼Óµµ »¡¶ú´Ù°í »¡¶óÁöÁö ¾Ê¾Æ¿ä.
½ºÀ§Ä¡ºÎÅÍ ¼³Á¤ÇØÁÙ ºÎºÐÀÌ ¸¹°í¿ä..
À§ ¼ºñ½º¸¦ È°¿ëÇÏ¸é ¹°¸®Àû ½ºÀ§Ä¡±îÁö ¼³Á¤±îÁö´Â ÇÊ¿ä ¾øÀ»µí º¸ÀÔ´Ï´Ù.
NIC¿¡¼µµ ÇØ´ç ¿É¼ÇÀÌ È°¼ºÈµÇ¾î¾ß RDMA°¡ µ¿ÀÛÇÕ´Ï´Ù.
·¥µð½ºÅ©¸¦ ¾²¸é µÈ´Ù°í Çϼ̴µ¥ ÀÌ·¯¸é rdmaÀÇ Àǹ̰¡ ¾ø½À´Ï´Ù.
¸Þ¸ð¸® °ø°£ ÇÒ´ç¹Þ¾Æ µÎ°í °Å±â¿¡ ÆÄÀϽýºÅÛÀ» ¿Ã¸®°Ô µÇ´Âµ¥ ÀÌ·¯¸é ¼Û¼ö½Å¸¸ RDMA·Î ó¸®ÇÏ°í FS RW µ¿ÀÛÀº °á±¹ CPU°¡ ÇÏ°Ô µË´Ï´Ù.
ÀϹÝÀûÀ¸·Î °¡»óÈ È¯°æ¿¡¼ RDMA¸¦ »ç¿ëÇÒ ¶§´Â SR-IOV¸¦ »ç¿ëÇÏ¿© ÇÏÀÌÆÛ¹ÙÀÌÀúÀÇ ³×Æ®¿öÅ© ½ºÅÃÀ» ¿ÏÀüÈ÷ ¿ìȸÇÏ°Ô µË´Ï´Ù. ±×·¡¾ß RDMA¸¦ »ç¿ëÇÏ´Â Àǹ̰¡ ÀÖÀ¸´Ï±î¿ä. ÇÑ °¡Áö ¹Ý·Ê·Î´Â VMwareÀÇ PVRDMA ±â¼úÀÌ Àִµ¥, ÀÌ ³ðÀº °¡»óÈ È¯°æÀÇ À¯¿¬¼ºÀ» °¡Á®°¡´Â ´ë½Å 20% Á¤µµÀÇ ¼º´É ÆгÎƼ¸¦ ¾ò½À´Ï´Ù.
±×¸®°í RDMA¶û ·¥µð½ºÅ©°¡ ¿¬µ¿ÀÌ °¡´ÉÇÑÁö´Â Àß ¸ð¸£°Ú³×¿ä. ¾Æ¿¹ RDMA¸¦ °í·ÁÇÑ ¹«¾ð°¡°¡ ÀÖ°í ±×°ÍÀ» È°¿ëÇÑ´Ù¸é ¸ð¸£°ÚÀ¸³ª, ÀϹÝÀûÀÎ °æ¿ì ÆÄÀϽýºÅÛÀ¸·Î Ãë±ÞÇϱâ À§ÇØ Ãß°¡ÀûÀΠ󸮰¡ ÇÊ¿äÇÏ°í ¸Þ¸ð¸®¸¦ Á÷Á¢ ÇÇ´×ÇÏ´Â °Íµµ ¾î·Á¿ï ¼ö ÀÖ¾î Ãß°¡ÀûÀÎ ¿À¹öÇìµå¿Í ¸Þ¸ð¸® º¹»ç¸¦ À¯¹ßÇÒ °¡´É¼ºÀÌ ³ô¾Æ¼¿ä. ±×·¡¼¾ß RDMAÀÇ Àǹ̰¡ ¾øÀ» °Í °°½À´Ï´Ù.