{"title":"Parallelizing CPU-GPU Network Processing Flows","authors":"Anup Nair, Amit M. Joshi","doi":"10.1109/ICITIIT54346.2022.9744209","DOIUrl":null,"url":null,"abstract":"Network processing has traditionally been a CPU-intensive operation where every device in the network has to do packet processing. With the upcoming needs for a digital world and rising technologies like 5G, the demand for faster processing has dramatically increased. In such cases, using only the CPU for network processing across core devices and edge devices can become a major bottleneck. This work aims to explore the use of GPUs for network processing and exploiting data-level parallelism in network-processing operations to speed up the overall network. The work throws light on how data transfer overheads can be minimized using CUDA Streams and achieves a 2x performance improvement with respect to synchronous data transfer. The subsequent part of this work deals with the implementation of packet switching on GPUs with the help of Bloom Filters. The exponentially increasing execution time on the CPU with respect to the number of packets is reduced to a constant execution time on GPU.","PeriodicalId":184353,"journal":{"name":"2022 International Conference on Innovative Trends in Information Technology (ICITIIT)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-02-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 International Conference on Innovative Trends in Information Technology (ICITIIT)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ICITIIT54346.2022.9744209","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
Network processing has traditionally been a CPU-intensive operation where every device in the network has to do packet processing. With the upcoming needs for a digital world and rising technologies like 5G, the demand for faster processing has dramatically increased. In such cases, using only the CPU for network processing across core devices and edge devices can become a major bottleneck. This work aims to explore the use of GPUs for network processing and exploiting data-level parallelism in network-processing operations to speed up the overall network. The work throws light on how data transfer overheads can be minimized using CUDA Streams and achieves a 2x performance improvement with respect to synchronous data transfer. The subsequent part of this work deals with the implementation of packet switching on GPUs with the help of Bloom Filters. The exponentially increasing execution time on the CPU with respect to the number of packets is reduced to a constant execution time on GPU.