bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Calling vm_object_deactivate_pages for each vm_object_deallocate kills p


From: Sergio López
Subject: Calling vm_object_deactivate_pages for each vm_object_deallocate kills performance.
Date: Fri, 23 Sep 2011 00:17:10 +0200

Hi,

Every time a persistent object is deallocated (this happens for every
vm_map->memcpy->vm_deallocate operation), vm_object_deactivate_pages
is called, which iterates over all pages in the object deactivating
all active pages. The impact of this operation is really high when
dealing with large objects, and can easily reduce read/write
operations from 50 MB/s to 10 MB/s.

Perhaps a simple flag in the object indicating if some of its pages
have been activated, and a change in vm_page_activate to turn on that
flag, would be enough to save a significant number of cycles.

Better ideas?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]