https://en.wikipedia.org/wiki/Orville_Freeman https://ers.usda.gov/sites/default/files/_laserfiche/publica...
6,226 karma · joined February 13, 2014
https://en.wikipedia.org/wiki/Orville_Freeman https://ers.usda.gov/sites/default/files/_laserfiche/publica...
Every modern harddrive, and most if not all nvme/sata SSDs have built in error correction as part of the encode/decode of your data to the media/flash, Combined with link layer data integrity protection/etc the most likely place for data corruption is low end intel machines without ECC ram, or really old arm designs that don't have cache/interconnect protections, which don't have ECC ram either.
So, the drive usually has far better error correction and detection than your getting with these software algorithms and running the mdadm, scrubbing is more than sufficient to detect basically 100% of 'bitrot'.
There is a ton of false information all over the internet about RAID1 vs RAID5/6, and this article is in the same boat WRT why one would prefer RAID1 vs one of those. (Clue, it has absolutely nothing to do with data integrity).
Pretty much everyone running a home NAS is going to be better off with just a RAID5 + regular scrubbing, vs all this other nonsense. For people who want something a bit better RAID6+scrubbing and then a DIX/DIF enabled path. I think your more likely to hit a critical ZFS bug, than have a problem with a well maintained raid5 setup running on reliable hardware. Think ECC + working AER/MCE/etc RAS reporting. Nevermind that pretty much none of these applications close the loop on their own data manipulation and that fancy new database your running overwriting the wrong record won't be saved by anything other than a good snapshot/backup mechanism.
People complain about lack of US manufacturing, and short term thinking and its all heavily tied to a couple fundamental truths about companies in the USA.
Corporate raiding and looting is a core part of the fiance sector. There are a half dozen methods of asset stripping used against literally all successful businesses here. Much of this 'short term thinking' is either the business trying to make itself look less appealing, or the actual act of handing the money over directly via stock buybacks or dividends (which are at least taxed) rather than investing in the company.
'Investors' in the USA have absolutely zero interest in the actual companies they are investing in, because it is to easy to divest of those investments or sell/merge the resulting companies. The goal largely seems to be to create the illusion of success at any cost. If that means destroying the company to get a 10% return next month, then that's fine, because they will then turn around and sell it before it collapses.
At least some of this could be solve via strong incentives against short term investing. Say an actual value tax (rather than a capital gains tax) that penalizes holdings less than a couple years. A 25% value tax applied for holdings less than a year that decreases to 0 over some longer time-frame, say 5 years. Yes this would completely destroy the business model of quite a number of wall street firms, and maybe even make it hard for businesses to raise capital. But, it would put a lot more focus on buying businesses that actually have long term prospects, allow those businesses to invest in capital intensive manufacturing operations and a laundry list of other things most people agree is a good idea. It would also likely return stock prices to realistic future return numbers because investing in companies with obviously inflated market caps would become a lot more risky.
A lot of people talk about 'tooling' quality and no one hears them. I just spent a couple weeks porting a fairly small library to some fairly common personal hardware and hit all the same problems you see everywhere. Bugs aren't handled gracefully. Instead of returning "you messed up here", the hardware locks up, and power cycling is the only solution. Not a problem when your writing hello world, but trolling through tens of thousands of lines of GPU kernel code to find the error is going to burn engineer time without anything to show for it. Then when its running, spending weeks in an open feedback loop trying to figure out why the GPU utilization metrics are reporting 50% utilization (if your lucky enough to even have them) and the kernel is running at 1/4 the expected performance is again going to burn weeks. All because there isn't a functional profiler.
And the vendors can't even get this stuff working. People rant about the ROCm support list not supporting, well the hardware people actually have. And it is such a mess, that in some cases it actually works but AMD says it doesn't. And of course, the only reason you hear people complaining about AMD is because they are literally the only company that has a hardware ecosystem that in theory spans the same breadth of devices from small embedded systems to giant data center grade products that NVIDIA does. Everyone else wants a slice of the market, but take apple here, they have nothing in the embedded/edge space that isn't a fixed function device (ex a watch, or apple TV), and their GPU's while interesting are nowhere near the level of the datacenter grade stuff, much less even top of the line AIC boards for gamers.
And its all gotten to be such an industry wide pile of trash that people can't even keep track of basic feature capabilities. Like, a huge pile of hardware actually 'supports' openCL, but its buried to the point where actual engineers working on say ROCm are unaware its actually part of the ROCm stack (imagine my surprise!). And its been the same for nvidia, they have at times supported openCL, but the support is like a .dll they install with the GPU driver stack and don't even bother to document that its there. Or tensorflow that seems to have succumbed to the immense gravitational black hole it had become, where just building it on something that wasn't the blessed platform could take days.
For starters: https://man7.org/linux/man-pages/man3/pthread_setschedparam....
None of the standard attributes (AFAIK) are directly "put me on a tiny core", but they frequently work hand in hand with those decisions. Lower your priority and the scheduler dumps you on some low clocked small core kinds of effects when its not busy. Or if you have machine knowledge just set your core affinity with pthread_setaffinity_np() which as the extension states is non-portable but can directly translate to "run me on a tiny core" if the right mask is provided.
At least in C/C++ most if not all modern platforms provide these kinds of controls and metadata and while the API might change a bit writing a couple versions of schedule_me_on_a_tiny_core() for each target platform is fairly trivial.
AKA: I'm talking about the uplift one gets from say -march=native (or your arch of choice), FDO/PGO and various other optimization choices. Ex: Instruction selection for OoO cores. The compiler can know you only have to functional units capable of some operation with coreX, and your codes critpath is bottlnecked by those operations and can adjust the instruction mix to (mis)use some other functional units in parallel. Two units doing X, and one doing Y. Or just load to use latency, or avoidance of certain sequences, etc.
Those optimizations are tightly bound to a given core type. Sure modern OoO cores do a better job of keeping units busy, but its not uncommon to be working around some core deficiency by tweaking the compiler heuristics even now. Trolling through the gcc machine definitions:
https://github.com/gcc-mirror/gcc/blob/master/gcc/config/i38...
So, when the CPU's are heterogeneous with differing optimization targets the code author ends up picking 'generic' optimization targets, and this decision by itself can frequently mean leaving a generation or two of performance behind vs the usual method of just building a handful of shared libraries/etc and picking one at runtime based on the cpu type.
Although, sure an application author can on some platforms hook a rescheduling notification, and then run a custom thread local jump table update to reconfigure which code paths are being run, or other non-standard operation. Or for that matter just set their affinity to a matching set of cores, but none of this is a core operation in any of the normal runtime/etc environments without considerable effort on the part of the application vendor.
It just goes to show how hard scheduling actually is.
But also, you call it a 'massive' problem and its actually somewhat small in comparison to what can happen with vastly different core types in the same machine. Many of those cores also have quite large cache differences too.
No one has come close to solving the problem of optimizing software for multiple heterogeneous CPU's with differing micro-architectures when the scheduler is 'randomly' placing threads. There are various methods in linux/windows/etc which allow runtime selection of optimized paths, but they are all oriented around runtime selections (ex pick a foo variation based on X and keep it) made once, rather than on cpu/context switch.
This means that one either uses a generic target and takes the ~1.5-2.5x perf hit, or one optimizes for a single core type and ignores the perf on the other cores. This is probably at least partially why the gaming IPC numbers are so poor. The games are optimized for a much older device.
So a 1.5-2.5x perf difference is these days could be 5-10 years of performance uplifts being left on the table. Which is why AMD seems to be showing everyone a better path by simply using process optimizations and execution time optimization choices with the same zen cores. This gives them both area, and power optimized cores without having to do a lot of heavyweight scheduler/OS and application optimization. Especially for OS's like Linux which don't have strong foreground/background task signalling from a UI feeding the scheduler.
In other words heterogeneous SMP cores using differing micro-architectures will likely be replaced with more homogeneous looking cores that have better fine grained power and process optimizations. Ex, cores with even wider power/performance ranges/dynamism will win out over the nearly impossible task of adding yet another set of variables to schedulers which are already NP-hard, and adding even finer grained optimized path selection logic which will further damage branch prediction + cache locality the two problems already limiting CPU performance.
So at least some of our students are being given the opportunity, and there are multiple paths to success, but maybe the largest difference is that while truly talented multi disciplinary young engineers (and I work with a few) are rare, they always have been. The real questions are probably around social issues, does giving your kid a phone remove the boredom that encourages them to tinker with stuff in the garage, is there a sweet spot of being able to afford an old car, but to poor to pay to fix it, force kids to learn hands on repair skills. Does being able to stop at radio shack/surplus/frys/metal supply/etc and browse racks of stuff on the way home from school encourage kids to build stuff to impress their friends, or is having it delivered in the mail enough. AKA, like me the other day, I stopped a microcenter to get a pedestrian computer peripheral I could have ordered from amazon, but discovered a ESP camera module that gave me 'ideas'.
Once you get a few of them, the search engines will start pointing out a long list of other moral/etc panics.
https://www.ourhistory.org.uk/ten-times-america-created-a-mo...
Overwhelmingly, it does seem to be the same group of people fomenting these.
And frankly, as someone who works closely with some of these distro's, I think there is a silent majority who have the same opinion but aren't willing to pay the political tax in their ecosystem for standing up and pointing out the emperor is naked for fear of sounding like a Luddite and being sidelined.
Intel has plenty of engineering talent, if the bean counters, politicians and board would just get out of the way they would come back. But instead you see patently stupid/poor execution like then still ongoing avx512 saga. Lakefield, is a prime example of WTFism showing up publicly. The lack of internal leadership is written as loud as possible on a product where no one had the political power to force the smaller core to emulate avx512 during the development cycle, or NAK a product where the two cores couldn't even execute the same instructions. Its an engineering POC probably being shopped to apple or someone else considering an arm big.little without understanding how to actually implement it in a meaningful way. Compared with the AMD approach which seems to even best the arm big.little by simply using the same cores process optimized differently to the same effect without having to deal with the problems of optimizing software for two different microarch.
And it continues to this day, when one looks at the QC/Windows laptop pricing, or various other trailing technology stacks that think they can compete in apples playground.
In the end, I had to go spend a couple hours reading the documentation to understand the matching engine, and the final patch didn't look anything at all like the LLM generated code. Which is what seems to happen all the time, it is wonderful for spewing the boilerplate, the actual problem solving portions its like talking to someone who simply doesn't understand the problem and keeps giving you what it has, rather than what you want.
OTOH, its fantastic for review/etc even though I tend to ignore many of the suggestions. Its like a grammar checker of old, it will point out you need a comma you missed, but half the time the suggestions are wrong.
A bit of playing with chatgpt will dump the formulas required and even solve them for a given set of constraints. Basically one takes the average inflation adjusted of an investment vehicle, then solves for what percentage of income for a given timeframe, in order to return a portion of a persons income for another timeframe. Ex: given say the US stock market average return for the past 100 years, one wants to work for 30 years and retire for 30 years with a 70% of the final income, it works out to 8-9% of a persons income. Then shift the numbers to 40/20 years, cap the maximum payout at say the median income, and wow a pension system that grows faster than the rate of inflation, provides for a retirement age of ~60 and the percentage drops to ~5% or less.
People complaining about demographic trends are buying into the idea that the input dollars have to equal the output dollars, and its dumb, and isn't even the way the social security trust fund in the USA works. Which shows that its possible to ride out population bubbles, much less actually providing a long term savings vehicle that if it were run correctly would eventually be indefinitely solvent. But at least in the USA one party has consistently stood in the way for the past 40 years of solving some of these financial problems, and in fact seems to make them worse by flattening the progressive nature of the federal taxes through tax cuts which overwhelmingly target the groups most able to absorb higher tax rates. And the result are cases where single individuals single handily hold 2% of the wealth of their entire generation and the country looks like its falling apart and there is artificial scarcity everywhere.
PS: Now there are a number of ways this breaks, mostly around cases where inflation is eating up most of the compounding growth, but most sovereign governments are fully capable of solving these problems if they choose to.
Before unreal, I had a s3-virge for 2d and a powerVR 3d accelerator pair, and I was always flipping between software, virge and powerVR depending on game. Which at the time were largely hexen/heretic. The powerVR was higher resolution and clean/sterile but never seemed like a lot better experience.
But then there was unreal, the first game I think was absolutely better on an accelerator (voodoo2 in my case). Its also pretty much the last of the serious software renderers and outside of the voodoo's definitely did a better job with software lighting /texture mapping/etc than any of the previous (affordable) accelerators. Which is why I ended up finally replacing the powerVR with the voodoo2. The results were 'unreal'. Some of that might just be bias, I played insane amounts of doom/etc but never really got into quake. Quake just seemed like doom rehashed to me, so I was off playing warcraft/diablo/hexen/etc.
And frankly, outside of FEAR, I stopped playing 1st person shooter games for 20 years, the graphics improvements were so incremental, I just kept seeing flat low polygon models everywhere. And I don't think that looks good. Even after all the tessellation/bump mapping/endless tricks I kept seeing frames where I could play "count how many polygons are onscreen right now" games. Its gotten better the past few years, particularly some of the lighting, at least the screenshots/cut scenes are no longer obviously not in game rendering. The UE5 demo is slowly becoming reality in actual games, so maybe its time to revisit a few of them.
Some people online at the time mentioned WB replaced a few of their disks with bluray's but I never managed to get WB to respond to my inquiries.
I ended up flying the jolly roger, I mean I own a legal copy, so its just format shifting...
So, relecting a person who has already shown a tendency to want to bend and break rules to stay in office, and is willing to simply ignore laws that aren't convenient is a problem. When that person starts installing sycophants into positions that actually control the military, financial and other fundamental levers of governing it becomes that persons choice, not the people or other democratically elected leaders whether to step down, or for that matter do anything else. The people who founded the USA understood that the president was just a step away from being a king and tried their best to counteract that. But, those people are a hundred and seventy years dead and the country has survived because the people elected to those positions were willing to adhere to the norms of governing, even if they didn't believe in the results.
So, I don't think anyone with any critical reasoning skills who has paid even the slightest attention over the past 12+ years believes that to be true of Trump or many of the people he is surrounding himself with this time. The McMasters who say "no you can't do that its illegal" are gone and daily any remaining resistance is being removed. Frankly at this point even if Trump steps down after 4 years. The Senators who have allowed it to progress this far have repeatedly abdicated their fundamental duty and are unfit for office (and that is putting it mildly).
If you can cut off funding to congressionally appropriate USAID programs, its just a likely you can cut off funding to the military unit that won't kiss the ring.
But it has a 150W pan heater, but I don't think that is its primary defrost mode, at least its not going to be at 50k btu at those temperatures unless its also really dry. The pan heater is probably to just assure that the coil melt water doesn't build up in the base pan.
For most of the forced air systemms in the USA, the deforst mode is as I mentioned triggered via outdoor coil temp/runtimes and somewhere below an ambient of ~30F, which will be a coil temp of ~20F. The exact algorithm changes from AC unit to unit, but you get say 20 mins of heating, and then it will flip to 5 mins of AC while not running the oudoor fan, where an electric (or maybe gas) furance will heat the indoor air after it flows over the indoor coil which is cooling the air. So its a double wammy, its taking 5+ mins of operation back at an even higher wattage.
AKA the COP goes negative for 5 minuites... Which will pull the SEER numbers down pretty hard, and that unit actually has pretty poor numbers for being variable speed compressors/etc.(edit: should be SCOP, since SEER(2) is just the ac side, that unit looks to be optimized for heating. Either way, depending on which efficienty spec you pay attention to, the 'problem' tends to be that the SCOP/HSPF/etc numbers are calculated using 'moderate' temp data, so below freezing temps are a minority of the calculation)
I poked around a bit looking for the install/service guide for that unit but didn't find one detailing the defrost algorithm.
Then on the generation side, its worse if the NG generation isn't a modern combined cycle plant. which also tends to nix places with a lot of renewable generation because the NG plants are just peaker gas turbines with much lower efficiency than plants designed for continuous use. So, its all situational, but at the same time if one has the choice for cheap NG using that as a second stage and setting the crossover heatpump temperature at the cost/BTU intersection between the heatpump and NG second stage is a rough approximation of the enviromental costs as well as the actual cost.
EX: in places with high electric prices and low NG prices or really cold temps, skipping the heatpump might be the right choice.
OTOH, reddit/etc are full of people asking and finding out that their AC installer didn't do this calculation and just set the lockout temp at 40F or some other back of the hand value they have been using for a few decades.
And yes, its possible to get heatpumps that work well below 35F, but they also have defrost cycles which absolutly destroy their efficiency because the defrost cycle is usually just running the heatpump in AC mode, while using the second stage to keep the air temp from falling in the house.
Before I moved to backblaze I was half seriously lining up a few friends to share a similar setup that would self replicate between our houses and provide a simple restic interface.
Besides, they do charge for egress over a certain threshold so it seems they are also capping how much they can make from some customers. I get that there are probably a few problematic ones, but it seems that the business should be able to figure which ones are causing problems and solve it that way, rather than punishing the smaller customers using them as a storage depot. Customers whichh go years with a low level of upload+transactions under the theory that should the need arise the entire repo can be pulled back down at a few hundred MB/sec in a manner of hours.
So basically they just leapfrogged LTO9 without a drive? I mean if these things are anywhere close to the price of actual tape, its a gonner.
But it also shows just how far behind the LTO consortium has allowed tape to get while milking the market by providing just slightly better density/price profiles to HDDs in a rack.
So, I wouldn't say intel's modems were awful, maybe not as good as the QC's of the time, but it could just have been immature, and underfunded. Apple OTOH, is famous for taking somewhat failed teams and having a long enough vision to create great products. They seem to understand that 9 women can't create a baby in 1 month and are willing to keep iterating until its right if it solves a problem for them.
Bottom line, linux on laptops only really works because of ACPI, if you were wondering what the laptop space looks like without it, I might suggest grabbing a couple random arm laptops/chromebooks and giving them a spin.