  Parallel programs written using the standard Message Passing Interface (MPI)
frequently depend upon the ability to efficiently execute collective
operations. MPI_Scan is a collective operation defined in MPI that implements
parallel prefix scan which is very useful primitive operation in several
parallel applications. This operation can be very time consuming. In this
paper, we explore the use of hardware programmable network interface cards
utilizing standard media access protocols for offloading the MPI_Scan operation
to the underlying network. Our work is based upon the NetFPGA - a programmable
network interface with an on-board Virtex FPGA and four Ethernet interfaces. We
have implemented a network-level MPI_Scan operation using the NetFPGA for use
in MPI environments. This paper compares the performance of this implementation
with MPI over Ethernet for a small configuration.
