On a NIC’s Operating System, Schedulers and High-Performance Networking Applications
Two critical issues impact the overall performance of Linux clusters based on Intel servers: inter-process communication latency and data throughput. Underlying both of these performance challenges is the inefficient use of computational power and server CPU cycles to process the network protocols. Today’s modern high-end Network Interface Cards (NICs) are equipped with an onboard CPU. In most cases, these CPU’s are only used by the vendor and are operated by a proprietary OS, which makes them inaccessible to the HPC application developer. In this paper we present a design and implementation of a framework for building high-performance networking applications. The framework consists of an embedded NIC Operating System with a specialized scheduler. The main challenge in developing such a scheduler is the lack of a preemption mechanism in most high-end NICs. Our scheduler provides finer-grained schedules than the alternatives. We have implemented several network applications, and were able to increase their throughput while decreasing the host’s CPU utilization.
KeywordsSchedule Algorithm High Performance Computing Periodic Task Network Interface Card High Performance Computing Cluster
Unable to display preview. Download preview PDF.
- 3.Pratt, I., Fraser, K.: Arsenic: A user-accessible gigabit ethernet interface. In: INFOCOM, pp. 67–76 (2001)Google Scholar
- 5.Wilson, P.R., Johnstone, M.S., Neely, M., Boles, D.: Dynamic storage allocation: A survey and critical review. In: Proc. Int. Workshop on Memory Management, Kinross Scotland (UK) (1995)Google Scholar
- 6.Cheng, S.C., Stankovic, J.A., Ramamritham, K.: Scheduling algorithms for hard real-time systems: a brief survey, pp. 150–173 (1989)Google Scholar
- 8.Shmueli, E., Feitelson, D.G.: Backfilling with lookahead to optimize the performance of parallel job scheduling. In: Job Scheduling Strategies for Parallel Processing (2003)Google Scholar
- 9.Weinsberg, Y., Pavlov, E., Amir, Y., Gat, G., Wulff, S.: Putting it on the NIC: A case study on application offloading to a Network Interface Card (NIC). In: IEEE CCNC (2006)Google Scholar
- 10.(Super-fast Transport Over Replicated Machines (Storm)), Available at site: http://www.cs.huji.ac.il/~wyaron.