This event has ended. Visit the official site or create your own event on Sched.
September 11-14, 2017 - Los Angeles, CA
Click Here For Information & Registration
Back To Schedule
Wednesday, September 13 • 2:50pm - 3:30pm
hugetlbfs, Still Alive and Kicking - Mike Kravetz, Oracle

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
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
process normally

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.

avatar for Mike Kravetz

Mike Kravetz

Software Engineer, Oracle
Mike Kravetz is a software engineer in Oracle's Linux kernel development team. He is currently focused on memory management.

Wednesday September 13, 2017 2:50pm - 3:30pm PDT
Diamond Ballroom 3