This paper addresses how formal verification can be applied to find a bottleneck in a gigabit network interface card that
prevents the card from achieving the best possible performance. Finding a bottleneck in a gigabit network interface card is
not an easy task because it is equipped with sophisticated hardware components, such as multiple DMA engines and separate
CPU and memory. Therefore, the interactions between a network interface card and the host are very complex so that the firmware
to manage the interactions is also complicated, which makes the bottleneck analysis very difficult. As an alternative approach
of the bottleneck analysis, we specify the firmware in a gigabit network interface card and analyze the behavior of the specification
with SPIN. As an example of gigabit network interface cards, Myrinet is used in this paper. We show that SPIN can easily verify
whether the Myrinet firmware has a bottleneck once the state transitions inside the firmware are modeled properly.
This research was supported in part by the University Software Research Center Supporting Project of the Korea Ministry Information
& Communication and by the Korea Science & Engineering Foundation under grant No. R01-2000-00287.