HNHacker News
TopNewBestAskShowJobs

billsmithaustin

403 karma · joined July 30, 2014

submissionscomments
billsmithaustin··on Linux Performance
His site is a great information source. I used some of his work to diagnose a JVM performance problem (discussed in https://news.ycombinator.com/item?id=12505517).
billsmithaustin··on Supreme Court Should Block Printer Company’s Ploy to Undermine Consumer Rights
There was a similar story two years ago about how a farmer was legally prohibited from altering the software in a John Deere tractor owned by the farmer.

https://news.ycombinator.com/item?id=9414211

billsmithaustin··on Hands on with the First Open Source Microcontroller
The VAX was not a mainframe.
billsmithaustin··on 'Legitimate' US healthcare pricing could reduce costs by a third
I guess that excludes enterprise software companies.
billsmithaustin··on Why are developers switching from Mac OS X to Linux?
I'm not sure name-calling is the best way to make your case. Couldn't someone who defends Apple against their shortcomings be written off as an Apple fanboy too?
billsmithaustin··on As Groundwater Dwindles, a Food Shock Looms
Alabama is in the midst of a drought.
billsmithaustin··on The Space Shuttle Challenger Explosion and the O-ring
The Apollo 1 cabin caught on fire on the launch pad. All three astronauts died.
billsmithaustin··on A Billion User Load Test on Healthcare.gov
True, but running at 7754 tps over an hour with a database of 28M users is easier than with a database of 1B users.
billsmithaustin··on Some thoughts about the reports of supposed evidence of election irregularities
It is nonsensical to credit Trump's win to the Electoral College. How a candidate runs a campaign is dependent on the rules that govern the election. If you were to change the rules, the campaign would be run differently. None of us know what would have happened if the candidates had run their campaigns without the constraints imposed by the Electoral College.
billsmithaustin··on Time to Dump Time Zones
The article makes a good case for why you might not have a good idea for what it means for my friend on the other side of the country to wake up an 9. In the United States, for example, there are states that opt out of Daylight Savings Time. A Google search could tell me what they are but I haven't memorized them. And even at that, if my friend was making a point about how long the sun had been up (or down), I would to mentally translate after checking a sunrise/sunset calculator.

When I need to synchronize with someone else, time zones get in the way. When I need to describe an experience relative to where I am, I might want to refer a time calibrated to exact my coordinates on the Earth. That was hard in the 1800's but would be easy today now that everyone carries a GPS receiver in their pocket. The same for reporting time relative to sunrise.

billsmithaustin··on JRE 8 needs more codecache than before
I believe TieredCompilation was disabled by default on Java 7u55:

    $ java -server -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version|grep TieredCompilation
         bool TieredCompilation                         = false           {pd product}        
    java version "1.7.0_55"
    Java(TM) SE Runtime Environment (build 1.7.0_55-b13)
    Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03, mixed mode)
I would be interested in hearing from people with first-hand experience disabling TieredCompilation on Java 8 on production servers.
billsmithaustin··on JRE 8 needs more codecache than before
Thanks, I'll see what I can do to clarify that point.
billsmithaustin··on JRE 8 needs more codecache than before
I think you meant the machine code. The Java compiler produces bytecode from Java source. The C1 and C2 bytecode compilers in the JVM convert bytecode to machine code.

Yes, I agree if C2 recompiles something C1 already compiled, the C1-compiled machine code should be freed from the codecache.

billsmithaustin··on JRE 8 needs more codecache than before
Yes, I think that approach would avoid propagating inappropriate or unnecessary settings.
billsmithaustin··on JRE 8 needs more codecache than before
To be clear, the Java 8 default is much higher than Java 7's. If you stick with the default, you will probably be fine.
billsmithaustin··on JRE 8 needs more codecache than before
We knew to adjust other JVM settings (e.g. PermGen replaced by Metaspace) but we overlooked that (1) we used a non-default max codecache size and (2) the default for that setting was 3x higher for Java 8.

An unfortunate thing about using non-default JVM settings is that you need to scrutinize them every time you switch Java versions. If I ever go through this again, I will know to pay more attention to every JVM setting we override.

billsmithaustin··on JRE 8 needs more codecache than before
Author here. We know 128MB codecache was not enough and 256MB was sufficient. I think we could have gotten by with less, e.g. 200MB, but we stopped experimenting once we found a value that worked.

We don't have a complete understanding of why this app uses so much more codecache than other apps we've switched to Java 8. Now that we expose the codecache size in Datadog, I may try plotting code size vs codecache size for a variety of our apps.

billsmithaustin··on DNS And Docker Containers
One shortcoming of the OP's approach is the out-of-band process for updating dnsmasq's hosts file. If you want to use something like fig to start a cluster of containers, you still have to wrap a script around the fig command to update the hosts file. I wonder how hard it would be to modify SkyDock to update dnsmasq (update the hosts file and then kill -HUP dnsmasq).
← PreviousPage 6 of 6