RFR (S) CR 8006627/8007398: Improve performance of Long.toUnsignedString0, Integer.toUnsignedString0, UUID(String) and UUID.toString (original) (raw)
Ulf Zibis Ulf.Zibis at CoSoCo.de
Wed Feb 13 01:24:12 UTC 2013
- Previous message: RFR (S) CR 8006627/8007398: Improve performance of Long.toUnsignedString0, Integer.toUnsignedString0, UUID(String) and UUID.toString
- Next message: RFR (S) CR 8006627/8007398: Improve performance of Long.toUnsignedString0, Integer.toUnsignedString0, UUID(String) and UUID.toString
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Am 13.02.2013 00:30, schrieb Mike Duigou:
Hi Steven;
I have updated the patch for Java 8. There's somewhat less code sharing and a bit of refactoring than your last version but the performance should be about the same or a little better. http://cr.openjdk.java.net/~mduigou/JDK-8007398/0/webrev/
Couldn't you use String(buf, true) for all to(Unsigned)String(...) methods ?
Instead of calculating the mask each time, you could use: 309 private static String toUnsignedString(int i, int shift, int mask) {
Additionally in e.g. Integer.toString(int i, int radix) you could provide the fast version with: 134 /* Use the faster version */ 135 switch (radix) { 136 case 2: return toString(i, 1, 0x1); 136 case 4: return toString(i, 2, 0x3); 136 case 8: return toString(i, 3, 0x7); 136 case 10: return toString(i); 136 case 16: return toString(i, 4, 0xF); 136 case 32: return toString(i, 5, 0x1F); 137 }
-Ulf
- Previous message: RFR (S) CR 8006627/8007398: Improve performance of Long.toUnsignedString0, Integer.toUnsignedString0, UUID(String) and UUID.toString
- Next message: RFR (S) CR 8006627/8007398: Improve performance of Long.toUnsignedString0, Integer.toUnsignedString0, UUID(String) and UUID.toString
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]