  Major chip manufacturers have all introduced Multithreaded processors. These
processors are used for running a variety of workloads. Efficient resource
utilization is an important design aspect in such processors. Particularly, it
is important to take advantage of available memory-level parallelism(MLP). In
this paper I propose a MLP aware operating system (OS) scheduling algorithm for
Multithreaded Multi-core processors. By observing the MLP available in each
thread and by balancing it with available MLP resources in the system the OS
will come up with a new schedule of threads for the next quantum that could
potentially improve overall performance. We do a qualitative comparison of our
solution with other hardware and software techniques. This work can be extended
by doing a quantitative evaluation and by further refining the scheduling
optimization.
