Particularly slide 20.
2,803 karma · joined July 22, 2012
Particularly slide 20.
Imagine if you wanted to put an addition on your house and needed to file a multi-million dollar lawsuit that could stretch over a decade before you could determine whether it would cross your neighbor's property line.
[1] There's still some gray area around fair use, but the contrast with patents is night and day.
The argument in the article is that if you don't have the resources to commercially exploit a patent yourself, then no one else will pay you for your invention, because a) the frictional costs in licensing from you are too high, especially when b) they can just steal the idea, since you are too poor to defend yourself in court.
That creates an inefficient market.
Personally, I think the effect of b) is smaller than implied, since an inventor could always sell the patent to a troll who can afford to defend it (though discounted by some large risk premium)... nevertheless I've heard of it happening.
The effect of a) is very real. Just consider any software product given away for free... even a requirement to count how many copies are distributed for the purposes of computing a royalty may be inimical to the business model.
When I started my Ph.D., early on they ran the numbers with us. The increased starting salary from having a Ph.D. (probably somewhere in the $15...$20k range... I forget the exact number) will never make up for the four year head-start someone who stops at a Bachelor's degree gets on actually drawing a salary, once you discount to net present value (even when you factor in a graduate student's meager stipend).
16:12:48 < gmaxwell> ha. So, completely eliminating all the doubles made celt slower.
16:13:23 < gmaxwell> I'm guessing that this is because I used the C99 float versions of the math functions and they suck.
16:13:57 < gmaxwell> looks like 3% slower or so.
16:14:05 < gmaxwell> <3 GLIBC.
16:26:02 < gmaxwell> with float approx the no-doubles is .9% faster. Whoohoo. ;)
17:24:06 < derf> Yes. Don't use the float versions of libc functions, at least not on x86-64.
17:24:24 < Dark_Shikari> what the heck did they do ?
17:24:53 < derf> They reset the rounding modes on entrance and exit of expf(), for example, regardless of whether or not they're already correctly set up.
17:25:07 < derf> Apparently this is really slow.
17:25:32 < gmaxwell> derf: I was hoping that they'd be fixed by now.
"Float approx" refers to our custom polynomial approximation of exp(). Given that, I think it's safe to infer that expl() would also have been slower than exp() in the average case. That was in 2010, though. This appears to have been fixed for expf() in 2012 (which now uses SSE/AVX instead of x87 asm on x86-64), but not for expl().
In our case, we only needed about 12 bits of accuracy anyway, so we wound up writing our own implementation using polynomial approximations (which have the benefit of predictable running times regardless of the quality of your C library). The fact that you need to do this in any context where worst-case performance is a concern might be surprising to some people. It was to me before I read glibc's code.
When we started looking at actual timings, we found that it was mostly pretty consistent, except for huge slowdowns in some frames. The cause? glibc's exp() slow path.
So, ironically, it can be orders of magnitude faster to compute a long-double expl() than a double-precision exp().
[1] Even the asm contains a lot of extra code to handle edge cases that Intel screwed up, like returning NaN for exp(+/- Inf).
Changing economics by deploying more PFS ciphersuites and shifting to technology which requires active attacks instead of passive ones can give real, practical improvements in privacy, even against state actors.
The point is that a simple text-based source format opens up the possibility for lots of different collaboration models that the Word software monoculture prevents.
P.S., in case it's not clear, I've volunteered for the Xiph.Org Foundation for over a decade.
[0] https://en.wikipedia.org/wiki/Vorbis#Support
[1] https://en.wikipedia.org/wiki/List_of_hardware_and_software_...
[2] https://en.wikipedia.org/wiki/Speex#Applications
[3] https://en.wikipedia.org/wiki/Theora#Playback
[4] https://en.wikipedia.org/wiki/Opus_%28audio_codec%29#Support
12:38:11 <+xiphmont> it seems wrong... but exact tracking felt worse.
I say this as someone who once walked 100 km in a bit under 21 hours. I am not an athlete. When I was done my knees had swelled to the size of grapefruits and I could not bend my legs anymore.
Identifying reviewers is a little harder, but it's usually not difficult to make educated guesses unless they are, as you put it intentionally vague. Otherwise the other comments on this article about bad reviews from 'people from "a different camp" simply disliking a given approach' and the like would be impossible to justify.
In the absence of some forcing function, the trend is for it to get worse, not better.