[
https://issues.apache.org/jira/browse/DIRECTMEMORY-53?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Benoit Perroud resolved DIRECTMEMORY-53.
----------------------------------------
Resolution: Fixed
Fix Version/s: 0.6.0
Assignee: Benoit Perroud
> MemoryManagerService buffers allocation policy
> ----------------------------------------------
>
> Key: DIRECTMEMORY-53
> URL: https://issues.apache.org/jira/browse/DIRECTMEMORY-53
> Project: Apache DirectMemory
> Issue Type: Improvement
> Reporter: Benoit Perroud
> Assignee: Benoit Perroud
> Priority: Minor
> Fix For: 0.6.0
>
> Attachments: AllocationPolicy.java,
> MemoryManagerServiceWithAllocationPolicyImpl.java,
> RoundRobinAllocationPolicy.java
>
>
> MemoryMamagerService with multiple buffers has a really simple, even buggy
> allocation policy : once a allocation fail (return null), we try the next
> buffer. If the allocation fails a second time, we return a failure (a null
> Pointer) to the caller.
> If all the previous buffer were full at one point, we stick to the last
> buffer, without any chance to try to allocate into a previous different
> buffer (which could have again free space due to expiration or pointer
> freeing).
> My idea here is to first correct this behavior, but then enhance the
> fonctionality by providing configurable buffer allocation policy. For example
> :
> - round robin allocation, with a certain amount of retries (this would also
> relax some concurrency contention)
> - allocate into the buffer with the more free space
> - allocate into the less fragmented buffer
> - random
> - ...
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira