HN user

knweiss

164 karma
Posts4
Comments45
View on HN

Feedback and bug reports (exception: security) should be public and users should be able to vote. Apple then could prioritize much better.

Also, take a look at their user forums: They are full of bug reports with hundreds of users having the same problems - and nothing happens. I really wish they would react much better with official acknowledgments, references to open bugs, workarounds, etc. It is depressing how much collective time is wasted.

IMHO it's worth mentioning that this discussion is about Spectre variant 1 (as is the original article). I.e. we should not write "Spectre" when we talk about a specific Spectre variant.

I'm mentioning this because (at least to my understanding) in Spectre variant 2 the entire address space of the victim process can be used to find the "gadget" i.e. an usable target for the indirect branch. This means that making only your input validation code "spectre-free" is not good enough for variant 2. (This is why e.g. OpenSSH recently started using the (Spectre variant 2!) retpoline compiler flags of GCC/LLVM if available. See this thread for details: https://lists.mindrot.org/pipermail/openssh-unix-dev/2018-Fe...)

From the OpenSSH moduli(5) man page:

  "When performing Diffie-Hellman Group Exchange, sshd(8)
  first estimates the size of the modulus required to
  produce enough Diffie-Hellman output to sufficiently
  key the selected symmetric cipher. sshd(8) then randomly
  selects a modulus from /etc/ssh/moduli that best meets
  the size requirement."
The problem is

a) OS distributions ship pre-computed moduli in the /etc/ssh/moduli file. I.e. most users don't change these moduli. This facilitates pre-computation attacks.

b) These moduli are often too short (<2048 bit).

You can create your own moduli with ssh-keygen (see the "MODULI GENERATION" section in the ssh-keygen manpage).

FWIW: Here's my open bug for RHEL7 where I try to convince Red Hat to improve the situation (including more details and references):

https://bugzilla.redhat.com/show_bug.cgi?id=1396943

Apple File System 10 years ago

"Although APFS does checksum metadata blocks it does not do anything to provide resilience for data blocks. That is a huge omission in a modern filesystem, a point I tried to politely but forcefully make in the File System Lab directly to a responsible engineer."

Brendan, did you read this awesome blog post (which mentions your work btw) about Google's tracing framework which may explain the kind of problems they want to solve? http://danluu.com/perf-tracing/

"Sampling profilers, the most common performance debugging tool, are notoriously bad at debugging problems caused by tail latency because they aggregate events into averages. But tail latency is, by definition, not average."

Check out the "Intel AVX Instructions Optimization" slide on http://anandtech.com/show/10158/the-intel-xeon-e5-v4-review/....

Quote:

On Haswell, one AVX instruction on one core forced all cores on the same socket to slow down their clockspeed by around 2 to 4 speed bins (-200,-400 MHz) for at least 1 ms, as AVX has a higher power requirement that reduces how much a CPU can turbo. On Broadwell, only the cores that run AVX code will be reducing their clockspeed, allowing the other cores to run at higher speeds.

The job of the distributions would be much easier if more software projects would a) consequently use semantic versioning (MAJOR.MINOR.PATCH, see http://semver.org for details) and b) explicitly and officially designate that they no longer support the version MAJOR.MINOR branch.

The latter should be a signal for the distribution to upgrade to a newer and supported upstream version instead of (halfheartedly) trying to support the software themselves.

FWIW: The new Ultra HD Blu-Ray Disc format which supports 4K, HDR, and Dolby Atmos/DTS:X will launch soon (if you can still tolerate an optical medium). Watch for the new "Ultra HD Premium" logo on compatible devices.

The next step: A distributed, content-addressed caching system that allows the web browser to fetch the data from the fastest/nearest caching server by hash.

IPFS comes to mind.

Fired 11 years ago

but when you were a few years out of college, did you have 3-6 months of salary saved up? I certainly didn't.

Actually, I did and it was a top-priority for me.

IMHO the data transfer rate is the important info:

  First 3.5 GB : 196 GB/s == 7/8 of 224 GB/s
  Last  0.5 GB :  28 GB/s == 1/8 of 224 GB/s
"When the GPU is accessing this segment of memory, it should achieve 7/8th of its peak potential bandwidth, not far at all from what one would see with a fully enabled GM204. However, transfer rates for that last 512MB of memory will be much slower, at 1/8th the card's total potential." http://techreport.com/review/27724/nvidia-the-geforce-gtx-97...

Haswell-E is Intel's high-end consumer CPU series and there's nothing wrong with that. However, only buy it if you regularly use software that is able to utilize that many cores/threads.

The dual-core CPU you are looking for is called the "Pentium Anniversary Edition: Intel Pentium G3258" and was released in July.

Support for the CPU code names in -march is a simple but really useful change:

   -march=nehalem, westmere, sandybridge, ivybridge, haswell,
   bonnell, broadwell, silvermont
Also this:
   -mtune=intel can now be used to generate code running well
   on the most current Intel processors, which are Haswell
   and Silvermont for GCC 4.9.