28 karma · joined September 1, 2021
> Is this the Valve console? > > We think of Steam Machine as an extension of PC gaming, not as a console. > > The traditional console model is to sell hardware at a loss and make up the revenue with subscription services or by selling games that are locked-in to the hardware. We think this can make sense for a single business in the short term but that open ecosystems are better for customers over the long term. PC gaming's history proves this: The openness of the PC gaming space has enabled it to be the primary driver of hardware and software innovation for decades. > > The strength of PC gaming is the ability to play the games you want on the hardware you want. Steam Machine is a solution to these problems (and we think it's a great one), but it's not the only solution, and we don't want it to be.
The only thing that you need to be aware of is that if you add another package or change it's version you need to reinstall the tool. I would suggest first removing it with `uv tool uninstall $NAME` and then reinstall it.
The only other connection type I found to be even worse is microusb. I lost count over how many cables I had to change, some even after just a few months. On the other hand I neved had any problem with usb-c cables or peripherals.
Take it with a grain of salt, I don't have much experience in running windows application on Linux, I just had some problems with wine and I discovered umu to be pretty straightforward and easy to use.
What you described is the Log2 Fold Change (log2(A/B)), meaning that if A has a log2FC of 15 over B, its signal is 2^15 times higher, hence ≈32,000x.
I agree with you though from my experience Memory Mapping is only useful if you need to jump through the file or read it multiple times (as is the case after the author added simd and a two pass step, the first to identify whitespaces and the second to parse the operation and the operants). If you just need to read the file once it's better to avoid memory mapping as it adds a little overhead.
On the other hand parsing directly from the input bytes avoiding the UTF-8 validation needed to have &str type is easy enough to do but still improves performance quite a bit. Even the rust csv crate, which does much more, is around 30% faster with this optimization. https://docs.rs/csv/latest/csv/tutorial/index.html#amortizin...
This is to say, my list for "easy optimizations, big gains", would be 1) Do not allocate a Vector — 2) Do not use peekable — 3) Avoid utf8 validation. I'm still guessing, but I think memory mapping can be skipped, and might be worth it only if you plan on also implementing simd.