[Vm-dev] VM Maker: VMMaker.oscog-eem.828.mcz

commits at source.squeak.org commits at source.squeak.org
Sun Jul 20 05:35:55 UTC 2014


Eliot Miranda uploaded a new version of VMMaker to project VM Maker:
http://source.squeak.org/VMMaker/VMMaker.oscog-eem.828.mcz

==================== Summary ====================

Name: VMMaker.oscog-eem.828
Author: eem
Time: 19 July 2014, 12:32:26.551 pm
UUID: 54a0b096-54ef-4c86-a382-d413bf54329d
Ancestors: VMMaker.oscog-eem.827

Spur:
Make sure to abort if the attempt to grow the remembered
set fails.  Try to grow by another 1k slots if doubling fails,
then abort.

Change the defaultEdenBytes to 4Mb.

=============== Diff against VMMaker.oscog-eem.827 ===============

Item was changed:
  ----- Method: SpurGenerationScavenger>>growRememberedSet (in category 'store check') -----
  growRememberedSet
  	| obj numSlots newObj base |
  	<inline: false> "Don't ruin locality in remember:"
  	<var: #base type: #'sqInt *'>
  	obj := manager rememberedSetObj.
  	numSlots := manager numSlotsOf: obj.
  	self assert: numSlots >= 1024.
  	newObj := manager allocatePinnedSlots: numSlots * 2.
+ 	newObj ifNil:
+ 		[newObj := manager allocatePinnedSlots: numSlots + 1024.
+ 		 newObj ifNil:
+ 			[self error: 'could not grow remembered set']].
  	manager rememberedSetObj: newObj.
  	base := manager firstIndexableField: newObj.
  	0 to: rememberedSetSize - 1 do:
  		[:i| base at: i put: (rememberedSet at: i)].
  	"if growing in the middle of a GC, need to preserve marked status."
  	(manager isMarked: obj) ifTrue:
  		[manager
  			setIsMarkedOf: newObj to: true;
  			setIsMarkedOf: obj to: false].
  	manager freeObject: obj.
  	rememberedSet := base.
  	rememberedSetLimit := numSlots * 2.
  	rememberedSetRedZone := rememberedSetLimit * 3 + 3 // 4!

Item was changed:
  ----- Method: SpurMemoryManager>>defaultEdenBytes (in category 'snapshot') -----
  defaultEdenBytes
+ 	"Answer the default amount of memory to allocate for the eden space.
+ 	 The actual value can be set via vmParameterAt: and/or a preference in the ini file.
+ 	 The shootout tests seem to plateau at 5 or 6Mb"
- 	"Return the default amount of memory to allocate for the eden space.
- 	 The actual value can be set via vmParameterAt: and/or a preference in the ini file."
  	<inline: false>
+ 	^4 * 1024 * 1024!
- 	^2 * 1024 * 1024!



More information about the Vm-dev mailing list