Skip to content

Commit

Permalink
Drop --smalltalk.storage-strategies option
Browse files Browse the repository at this point in the history
  • Loading branch information
fniephaus committed Mar 14, 2022
1 parent b7235fd commit b22ac1b
Show file tree
Hide file tree
Showing 4 changed files with 1 addition and 16 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,6 @@ public final class SqueakLanguageOptions {
public static final String STACK_DEPTH_PROTECTION_HELP = "Enable stack depth protection";
public static final String STARTUP = "disable-startup";
public static final String STARTUP_HELP = "Disable image startup routine in headless mode";
public static final String STORAGE_STRATEGIES = "storage-strategies";
public static final String STORAGE_STRATEGIES_HELP = "Disable storage strategy optimization for arrays";
public static final String TESTING = "testing";
public static final String TESTING_HELP = "For internal testing purposes only";
public static final String TRANSCRIPT_FORWARDING_FLAG = "--enable-transcript-forwarding";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,6 @@ public final class SqueakOptions {
@Option(name = SqueakLanguageOptions.STARTUP, category = OptionCategory.INTERNAL, stability = OptionStability.EXPERIMENTAL, help = SqueakLanguageOptions.STARTUP_HELP)//
public static final OptionKey<Boolean> Startup = new OptionKey<>(false);

@Option(name = SqueakLanguageOptions.STORAGE_STRATEGIES, category = OptionCategory.INTERNAL, stability = OptionStability.EXPERIMENTAL, help = SqueakLanguageOptions.STORAGE_STRATEGIES_HELP)//
public static final OptionKey<Boolean> StorageStrategies = new OptionKey<>(true);

@Option(name = SqueakLanguageOptions.TESTING, category = OptionCategory.INTERNAL, stability = OptionStability.STABLE, help = SqueakLanguageOptions.TESTING_HELP)//
public static final OptionKey<Boolean> Testing = new OptionKey<>(false);

Expand All @@ -65,7 +62,6 @@ public static final class SqueakContextOptions {
public final boolean isQuiet;
public final boolean disableInterruptHandler;
public final boolean disableStartup;
public final boolean enableStorageStrategies;
public final boolean isTesting;
public final boolean signalInputSemaphore;

Expand All @@ -78,7 +74,6 @@ public SqueakContextOptions(final Env env) {
disableInterruptHandler = options.get(Interrupts);
disableStartup = options.get(Startup);
signalInputSemaphore = options.get(SignalInputSemaphore);
enableStorageStrategies = options.get(StorageStrategies);
isTesting = options.get(Testing);
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,10 +81,6 @@ public static boolean isLongNilTag(final long value) {
@Override
public void fillin(final SqueakImageChunk chunk) {
final Object[] pointers = chunk.getPointers();
if (!chunk.getImage().options.enableStorageStrategies) {
storage = pointers;
return;
}
final int valuesLength = pointers.length;
storage = valuesLength;
if (valuesLength > 0) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,11 +90,7 @@ protected static final PointersObject doPointersFallback(final SqueakImageContex
@Specialization(guards = "classObject.isIndexableWithNoInstVars()")
protected static final ArrayObject doIndexedPointers(final SqueakImageContext image, final ClassObject classObject, final int extraSize) {
assert classObject.getBasicInstanceSize() == 0;
if (image.options.enableStorageStrategies) {
return ArrayObject.createEmptyStrategy(image, classObject, extraSize);
} else {
return ArrayObject.createObjectStrategy(image, classObject, extraSize);
}
return ArrayObject.createEmptyStrategy(image, classObject, extraSize);
}

@Specialization(guards = {"classObject.isIndexableWithInstVars()", "image.isMethodContextClass(classObject)"})
Expand Down

1 comment on commit b22ac1b

@TruffleSqueak-Bot
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Performance Report (b22ac1b)

Benchmarks ran on graalvm-ce-java11-22.0.0.2.

Steady (after 50 iterations)

Benchmark Name Min Geomean Median Mean Max Total (ms) Total (min)
Bounce 182 277 185.59 182 185.11 37117 0.62
DeltaBlue 306 458 423.73 425 423.34 84745 1.41
Havlak 1705 1869 1773.89 1786 1773.65 354777 5.91
Json 740 786 749.2 746 749.15 149840 2.5
List 890 936 896.91 896 896.89 179381 2.99
Mandelbrot 144 170 145.57 145 145.53 29115 0.49
NBody 583 635 590.54 586 590.47 118109 1.97
Permute 232 276 233.97 232 233.91 46793 0.78
Queens 258 295 266.35 261 266.1 53269 0.89
Richards 1082 1129 1087.72 1083 1087.69 217545 3.63
Sieve 214 259 219.9 215 219.53 43980 0.73
Storage 292 339 296.21 293 296.12 59242 0.99
Towers 362 416 365.24 363 365.16 73047 1.22
6990 7845 7234.8 7213 7232.65 1446960 24.12

b22ac1b-2-steady.svg

Warmup (first 50 iterations)

b22ac1b-3-warmup.svg

Please sign in to comment.