hugetlbfs, Still Alive and Kicking

Session information has not yet been published for this event.

*
Refereed Presentation
Scheduled: Wednesday, September 13, 2017 from 2:50 – 3:35pm in Diamond 3

One Line Summary

Recent hugetlbfs features and unique characteristics

Abstract

Linux support for huge pages has been around since the early 2.6 time frame. When support was added, it followed the ‘everything is a file’ model and the result was hugetlbfs. hugetlbfs represents a pool of huge pages that are best pre-allocated at boot time. Because of this need for pre-allocation, special management and (minimal) application code modification, few applications actually use hugetlbfs. The early adopters and most prominent current users of hugetlbfs are large databases. Databases like to control as much of the system as possible and may even enjoy the extra control that hugetlbfs provides.

Recent efforts in the area of huge page support have been centered around Transparent Huge Pages(THP), where recent patches have added page cache support, and work is underway to even add support to the ext4 filesystem. With THP’s ease of use, one would think that few people care about the older and more difficult to manage hugetlbfs. However, some new features have been added to hugetlbfs mostly at the request of database developers. Surprisingly, some of these new features have found successful use in other areas such as Qemu Post Copy Live Migration.

This talk will discuss the new hugetlbfs features. In addition, it will include a general hugetlbfs presentation. At this year’s LSF/MM summit it was noted that hugetlbfs is “its own vm”. In a sense, it is true. Within the mm subsystem, there are many places that have code such as:
if (hugetlbpage()) call special hugetlbfs code
else normal mm code

Therefore, some assumptions one makes about general Linux mm do not apply to hugetlbfs. Some of the most prominent differences will be presented.

The goal for this presentation is to expose more people to this often forgotten functionality so that perhaps it can be employed in more creative ways.

Presentation Materials

slides

Speaker

  • Biography

    Mike Kravetz works in Oracle’s mainline Linux kernel development group. His most recent focus has been in the area memory management.