jira.codehaus.org

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What?s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • RVM
  • RVM-12

Tighten bounds in InlineAllocation test

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Improvement Improvement
  • Status: Open Open
  • Priority: Major Major
  • Resolution: Unresolved
  • Affects Version/s: None
  • Fix Version/s: 3.2
  • Component/s: Infrastructure: Test
  • Labels:
    None

Description

A very minor casualty in the last few months of cleanup is the appended code in InlineAllocation.java. What the test is trying to do is to have tighter bounds on the allowable code space for bump pointer allocators than for segregated free list allocators. Somewhere along the way, we lost the connection between the GC configuration and the test itself.

There are probably a number of ways to fix this; we don't particuarly need the VM_Configuration flag, just some way for the test to ask the VM whether or not it is using a bump pointer allocator.

// Limits on sizes of allocation sequences.
// Make them specific to the allocator so we can make them reasonably tight.

  • static int alloc1Limit = assertionSpace + (VM.BuildWithBumpAllocator ? (VM.BuildForIA32 ? 75 : 22) : (VM.BuildForIA32 ? 100 : 30)); // small object
    + static int alloc1Limit = assertionSpace + (VM.BuildForIA32 ? 100 : 30); // small object
    static int alloc2Limit = alloc1Limit + (VM.BuildForIA32 ? 8 : 2); //small array. Should be only the store of the length different than small object
    static int alloc3Limit = assertionSpace + (VM.BuildForIA32 ? 100 : 30); // large object
    static int alloc4Limit = (VM.BuildForIA32 ? 40 : 11); // unknown size object. Should not be inlined at all.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
David Grove added a comment - 03/Sep/07 2:27 PM

Looks like the lack of a tight bound on this test has allowed us to pork up the inline allocation sequence again. Need to fix the test so that we catch these performance problems when they get introduced, not when we happen to have another bug that happens to include an allocation sequence so we get lucky and notice...

Show
David Grove added a comment - 03/Sep/07 2:27 PM Looks like the lack of a tight bound on this test has allowed us to pork up the inline allocation sequence again. Need to fix the test so that we catch these performance problems when they get introduced, not when we happen to have another bug that happens to include an allocation sequence so we get lucky and notice...
Hide
Permalink
David Grove added a comment - 01/Oct/08 10:56 AM

With the new @InlineWhen AssertionsDisabled annotation I'm testing now, we should be able to make this test a little easier to handle: we can keep the same space goals with & without assertion checking.

Show
David Grove added a comment - 01/Oct/08 10:56 AM With the new @InlineWhen AssertionsDisabled annotation I'm testing now, we should be able to make this test a little easier to handle: we can keep the same space goals with & without assertion checking.

People

  • Assignee:
    David Grove
    Reporter:
    Peter Donald
Vote (0)
Watch (0)

Dates

  • Created:
    02/Jun/07 10:52 PM
    Updated:
    01/Oct/08 10:56 AM
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Codehaus. Try JIRA - bug tracking software for your team.