The primary goal of this research is to improve
the scalability and robustness of the Linux operating system
to support greater network server workloads more reliably.
We are specifically interested
in single-system scalability, performance,
and reliability of network server
infrastructure products running on Linux, such as
LDAP directory servers,
IMAP electronic mail servers,
and web servers, among others.
Project list
What follows is a list of current projects being pursued
by staff and students working with the Linux Scalability
Project.
- Thread scheduling scalability
-
Concerns about the scalability of multithreaded network servers
written in Java and running on Linux
have prompted us to investigate improvements
to the Linux kernel scheduler.
Our work focuses on incrementally improving the
existing scheduling architecture in the Linux kernel
rather than fundamentally redesigning it.
-
Sponsored by IBM and Intel.
- Linux implementation of NFSv4
-
Sun Microsystem's latest approach to NFS is version 4.
We are implementing NFSv4 in Linux based on the emerging
NFSv4 standards and the older Linux NFS implementations.
Our implementation will include an unencumbered port to Linux
of the secure GSSAPI RPC layer.
-
Sponsored by Sun Microsystems and Network Appliance.
- Posix Real Time signals
-
Netscape engineers developing server products have been
interested in a scalable high-performance mechanism for
asynchronously
managing tens of thousands of network connections
within a single server invocation.
The new Posix Real Time signal capabilities built into
the latest versions of Linux and other operating systems
offers promise for scalably managing
large numbers of network connections.
-
Sponsored by the Sun-Netscape Alliance and Intel.
- Application directed cache management
-
Multithreaded network servers require sophisticated
mechanisms to optimize the flow of data from server
disks to the network and vice versa.
Specific OS interfaces such as madvise()
and malloc(), when used properly, can
provide useful scalability and performance benefits,
especially in combination with threads.
As well, improvements in sendfile() will
boost scalability of any network server that uses it.
-
Sponsored by the Sun-Netscape Alliance and Dell.
- Memory management
-
SMP scalability of user-level and kernel memory managers
is just beginning to become important.
Our work focuses on making memory managers suitable
for use in multithreaded SMP environments.
-
Sponsored by the Sun-Netscape Alliance and Dell.
- Miscellaneous system call improvements
-
Miscellaneous improvements include removing SMP locking
constraints from sbrk(), analyzing and reporting
on thundering herd problems in accept(), improving
the scalability of poll(), and improving the
scalability of critical kernel data structures.
Our analysis also uncovered unnecessary lock contention
in the Linux kernel's page fault handling logic,
and a significant leak in the kernel's buffer cache.
-
Sponsored by the Sun-Netscape Alliance and Dell.
If you have comments or suggestions about the LSP, email
linux-scalability@citi.umich.edu
Revision: $Id: projects.html,v 1.3 2000/05/02 19:33:40 cel Exp $