I think it was just to show that the performance is comparable to Windows, implying that it also will be fine for games/settings where fps is in the range that does matter.
Ceph's design is to avoid a single bottleneck or single point of failure, with many nodes that can all ingest data in parallel (high bandwidth across the whole cluster) and be redundant/fault tolerant in the face of disk/host/rack/power/room/site failures. In exchange it trades away some of: low latency, efficient disk space use, simple design, some kinds of flexibility. If you have a "small" use case then you will have a much easier life with a SAN or a bunch of disks in a Linux server with LVM, and probably get better performance.
How does it work with no single front end[1] and no centralised lookup table of data placement (because that could be a bottleneck)? All the storage nodes use the same deterministic algorithm for data placement known as CRUSH, guided by placement rules which the admin has written into the CRUSH map, things like:
- these storage servers are grouped together by some label (e.g. same rack, same power feed, same data centre, same site).
- I want N copies of data blocks, separated over different redundancy / failure boundaries like different racks or different sites.
There's a monitoring daemon which shares the CRUSH map out to each node. They get some data coming in over the network, work through the CRUSH algorithm, and then send the data internally to the target node. The algorithm is probabalistic and not perfectly balanced so some nodes end up with more data than others, and because there's no central data placement table this design is "as full as the fullest disk" - one full disk anywhere in the cluster will put the entire cluster into read-only mode until you fix it. Ceph doesn't easily run well with random cheap different size disks for that reason, the smallest disk or host will be a crunch point. It runs best with raw storage below 2/3rds full. It also doesn't have a single head which can have a fast RAM cache like a RAID controller can have.[2] Nothing about this is designed for the small business or home use case, it's all designed to spread out over a lot of nodes[3].
It’s got a design where the units of storage are OSDs (Object Storage Devices) which correspond roughly to disks/partitions/LVM volumes, each one has a daemon controlling it. Those are pulled together as RADOS (Reliable Autonomic Distributed Object Store) where Ceph internally keeps data, and on top of that the admin can layer user-visible storage such as the CephFS filesystem, Amazon S3 compatible object storage, or a layer that presents as a block device which can be formatted with XFS/etc.
It makes a distributed system that can ingest a lot of data in parallel streams using every node’s network bandwidth, but quite a lot of internal shuffling of data around between nodes and layers adding latency, and there are monitor daemons and management daemons overseeing the whole cluster to keep track of failed storage units and make the CRUSH map available to all nodes, and those ought to be duplicated and redundant as well. It's a bit of a "build it yourself storage cluster kit" which is pretty nicely designed and flexible but complex and layered and non-trivial.
There are some talks on YouTube by people who managed and upgraded it at CERN as targets of particle accelerators data which are quite interesting. I can only recommend searching for "Ceph at Cern" and there are many hours of talks, I can't remember which ones I've seen. Titles like: "Ceph at CERN: A Year in the Life of a Petabyte-Scale Block Storage Service", "Ceph and the CERN HPC Infrastructure", "Ceph Days NYC 2023: Ceph at CERN: A Ten-Year Retrospective", "Ceph Operations at CERN: Where Do We Go From Here?".
[1] If you are not writing your own software that speaks to Ceph's internal object storage APIs, then you are fronting its with something like a Linux machine running an XFS filesystem or the S3-compatible gateway, and that machine becomes your single point of failure and bottleneck. Then you front one Ceph cluster with many separate Linux machines as targets, and have your users point their software to different front ends, and in that case why use Ceph at all? You may as well have had many Linux machines with their own separate internal storage and rsync, and no Ceph. Or two SANs with data replication between them. Do you need (or want) what Ceph does, specifically?
[2] I have only worked on HDD based clusters, with some SSDs for storing metadata to speed up performance. These clusters were not well specced and the metadata overflowed onto the HDDs which didn't help anything.
[3] There are ways to adjust the balance of data on each node to work with different size or nearly full disks, but if you get to read-only mode you end up waiting for it to internally rebalance while everything is down. This isn't so different to other storage like SANs, it's just that if you are going for Ceph you probably have a big cluster with a lot of things using it so a lot of things offline. You still have to consider running multiple Ceph clusters to limit blast radius of failures, if you are thinking "I don't want to bother with multiple storage targets I want one Ceph" you still need to plan that maybe you don't just want one Ceph.
While most of what you speak of re Ceph is correct, I want to strongly disagree with your view of not filling up Ceph above 66%. It really depends on implementation details. If you have 10 nodes, yeah then maybe that's a good rule of thumb. But if you're running 100 or 1000 nodes, there's no reason to waste so much raw capacity.
With upmap and balancer it is very easy to run a Ceph cluster where every single node/disk is within 1-1.5% of the average raw utilization of the cluster. Yes, you need room for failures, but on a large cluster it doesn't require much.
80% is definitely achievable, 85% should be as well on larger clusters.
Also re scale, depending on how small we're talking of course, but I'd rather have a small Ceph cluster with 5-10 tiny nodes than a single Linux server with LVM if I care about uptime. It makes scheduled maintenances much easier, also a disk failure on a regular server means RAID group (or ZFS/btrfs?) rebuild. With Ceph, even at fairly modest scale you can have very fast recovery times.
Source, I've been running production workloads on Ceph at fortune-50 companies for more than a decade, and yes I'm biased towards Ceph.
I defer to your experience and agree that it really depends on implementation details (and design). I've only worked on a couple of Ceph clusters built by someone else who left, around 1-2PB, 100-150 OSDs, <25 hosts, and not all the same disks in them. They started falling over because some OSDs filled up, and I had to quickly learn about upmap and rebalancing. I don't remember how full they were, but numbers around 75-85% were involved so I'm getting nervous around 75% from my experiences. We suddenly commit 20TB of backup data and that's a 2% swing. It was a regular pain in the neck, stress point, and creaking, amateurishly managed, under-invested Ceph cluster problems caused several outages and some data corruption. Just having some more free space slack in it would have spared us.[1]
That whole situation is probably easier the bigger the cluster gets; any system with three "units" that has to tolerate one failing can only have 66% usable. With a hundred "units" then 99% are usable. Too much free space is only wasting money, too full is a service down disaster, for that reason I would prefer to err towards the side of too much free rather than too little.
Other than Ceph I've only worked on systems where one disk failure needs one hotspare disk to rebuild, anything else is handled by a separate backup and DR plan. With Ceph, depending on the design it might need free space to handle a host or rack failure, and that's pretty new to me and also leads me to prefer more free space rather than less. With a hundred "units" of storage grouped into 5 failure domains then only 80% is usable, again probably better with scale and experienced design.
If I had 10,000 nodes I'd rather 10,100 nodes and better sleep than playing "how close to full can I get this thing" and constantly on edge waiting for a problem which takes down a 10,000 node cluster and all the things that needed such a big cluster. I'm probably taking some advice from Reddit threads talking about 3-node Ceph/Proxmox setups which say 66% and YouTube videos talking about Ceph at CERN - in those I think their use case is a bursty massive dump of particle accelerator data to ingest, followed by a quieter period of read-heavy analysis and reporting, so they need to keep enough free space for large swings. My company's use case was more backup data churn, lower peaks, less tidal, quite predictable, and we did run much fuller than 66%. We're now down below 50% used as we migrate away, and they're much more stable.
[1] it didn't help that we had nobody familiar with Ceph once the builder had left, and these had been running a long time and partially upgraded through different versions, and had one-of-everything; some S3 storage, some CephFS, some RBDs with XFS to use block cloning, some N+1 pools, some Erasure Coding pools, some physical hardware and some virtual machines, some Docker containerised services but not all, multiple frontends hooked together by password based SSH, and no management will to invest or pay for support/consultants, some parts running over IPv6 and some over IPv4, none with DNS names, some front-ends with redundant multiple back end links, others with only one. A well-designed, well-planned, management-supported cluster with skilled admins can likely run with finer tolerances.
It’s fine to not know what it is, but what is the rationale for commenting that you don’t know? Why not just look it up? Or don’t, as you’re too afraid to ask.
I don’t know what interviewing at Google is like now but I interviewed for Google in 2008 (no offer) and 2012 (offer) and the questions on both occasions were not of the nature that leetcode could have helped with much.
This is a weird post as the generated program doesn’t even output results.
I tried a similar test using Python and Claude Code and it generated something that outputted a sorted list of directory contents, like ls.
However, unlike the author, this doesn’t lead me to think this is AGI. How many posts are there out there that these models would be trained on have people explaining strace outputs and comparing code to them?
Is it the animation of the piece moving? I’ve tested it on a bunch of iOS devices and haven’t noticed anything odd, but I’d love to take a closer look. If you can, please share a video or GIF. It’ll really help. You can email it to me at support@offchess.com. Thanks for trying my app out and giving feedback.
It’s also worth noting that there isn’t exactly strong quality control on the product. There is a good chance what is labelled 150 micrograms is actually closer to 50 micrograms. Or it could really be 150…
But that's true for any criminalized substance. It's not like the FDA or EFSA or so is going to do lab tests on, say, XTC and fine producers that lie on their ads or ingredient-list.
Though biological products like psilocybin (or weed etc) are harder to measure and control by producers, in strength than purely chemical products like LSD or MDMA. It's hard to trace what mother nature did exactly when producing this particular mushroom cap, but it could be possible to trace what the chemist did when producing this particular blot. If only it were legalized and we could have actual control, tracability, and prosecution of malpractice...
They can be in more countries than just the Netherlands IIRC. And simple test-kits are available too - these aren't as good obviously, but can e.g. prove the absence or presence of certain (by)products.
Also, these tests are set up in a way that they are anonymous in a way that e.g. even if prosecutors could subpoena a test-location or lab to hand over administration, this administration won't contain any PII or even pseudonymous information.
I was under the impression that it's impossible to reliably test, e.g., cocaine for fentanyl, without destroying the drug and it doesn't take much of the latter narcotic to kill you.
Ah funny! You were 3 hours before me. It's not just xtc and coke. It's much more than that. Most things are simply going to be sent to the lab.
The only thing they don't test are things you can somehow get legally, if I recall correctly (so whatever you can get for any psychological condition).
With MDMA if you have 150 mg of powder, you have 150mg of powder, i.e. this is the upper bound on how much substance you will take (be it MDMA or not), i.e. there can't be MORE than 150 mg.
With LSD it's always a solution (either in paper or in liquid), so you can only trust the producer.
Sure it can’t be more than 150mg of MDMA, but that doesn’t tell you how much meth / fentanyl / whatever is in there, so it’s not like you’re somehow in a safer boat with it. At least it’s easier to test LSD for adulteration due to it being such a different chemical than what it could be adulterated with.
That's why I don't vape nicotine. Small molecule, sold in concentrate, mixed by who knows who. A high school chemistry experiment. If a butcher offers you a 4-ton pork chop by mistake at least it's obvious you shouldn't stand underneath it. Cigs are cigs but nicotine in solution is an assassination weapon. Ask the CIA.
People who long for the old days must realize there were serious mental issues in society. It wasn't a simple case of the dids and the didn'ts. People were batsh*it insane, and I don't mean hallucinogens, especially not LSD that is not directly toxic at all. People were literally driven to hysteria by the ~thought~ of LSD.
The juggernaut opposing LSD and set the stage for the endless war on drugs. It was the boogeyman that could justify any legal atrocity. Lives could be destroyed, tripping teenagers were treated as if it was a life threatening medical emergency, which is trauma and sadism. The monkey brain slides that implied chromosome damage was deliberately not replicated after the mistake in handling was found, and the study was cited for a decade after author retracted it. Just too convenient to repeat the lie.
It is not surprising that G. Gordon Liddy a toady in Nixon's cabinet, spoke up at a meeting briefly to suggest putting LSD on opposition journalist Jack Anderson's steering wheel. As if it's presence would cause an instant accident that flipped the car 5 stories into the air. He was showing off his ignorance and trying to boost his reputation as a 'fixer'.
But far more dangerous than LSD, a few impaired people here and there was the mass hysteria to the 'plot' and 'scandal' that wouldn't work anyway and 3/4 of the country was consumed by it. That was in 1972.
Then along comes fentanyl that is really scary and not much serious pushback, until 'recently'.
You're not wrong, but the biggest confounding factor for LSD is that a 100ug dose comes embedded in 10000ug of blotter paper. Scales are useless for determining how much you're taking.
This is true of every illegal drug to some extent. You do not know how it is mixed.
Though sure, your 100mg of "MDMA" is unlikely to contain more than 100mg of MDMA
My point is that the potency at small doses creates novel hazards which, when avoided (and rightly so) interfere with the ability to know what you have.
One dose would be tricky, but you could process twenty doses of "MDMA" via column chromatography and end up with a sample of MDMA which your scale can actually measure. There's nothing scary about twenty doses of MDMA except that maybe you'll get caught with it. If you dropped it, nobody would get hurt.
If you tried the same with LSD you'd have to process tens of thousands of doses before your scale would be of any use. That much LSD in solution is an accident waiting to happen. I wouldn't go anywhere near it.
That is not true and dangerous. 20 doses is deadly. It's less than the LD50 for most people, but since MDMA disregulates your body temperature you can easily overheat
Well yeah, if you consume it. I'm worried about it splashing out and touching your hand. That's how LSD was discovered, Hoffman accidentally touched it and got a massive dose. I'm just saying that its much more dangerous to be near several grams of LSD than it is to be near several grams of MDMA, which means that the only person who can tell you the potency is likely the person who was crazy enough to make it in the first place.
Some countries (Germany, Holland) have (or had ~5 years ago when I was interested in this) legal analogues of LSD that are produced and sold in a fully regulated, safe, precise manner.
Cocaine is still legal for medical use, but in twenty years of anesthesia I've never seen it used (though we are not an ENT-heavy practice). Too much concern about diversion. It's a great drug for ENT use but the way little bits of excess disappear means that most hospital pharmacies don't want to touch it (and surgery centers that don't have 24/7-staffed pharmacies want it even less due to risk of break-ins and theft).
Heroin is not legal in the US, although it is in the UK at least as a hospice med (under the generic name diamorphine).
Being significantly older than you (I retired from the practice of anesthesiology at age 67 in 2015) I am able to recount my experience with cocaine use to prepare patients for nasal intubation.
When I began my residency at the UCLA Department of Anesthesiology in the fall of 1977, I was instructed on how to use cocaine.
First, one requested a 2cc glass vial of cocaine hydrochloride solution (4-10% strength, prepared from cocaine powder).
The patient in the O.R. was then sedated heavily to both eliminate fear and anxiety and decrease the stinging and discomfort resulting from the imminent application of the cocaine solution against the nasal mucosa.
Cotton pledgets on thin wooden sticks about 6 inches long were submerged in the cocaine solution until saturated, then very slowly and delicately introduced into both nostrils simultaneously and rotated while being advanced deep into the nasal cavity: usually they went in about half their length.
A nice aid to successful intubation: As a rule, we chose to intubate via the nostril which most easily and deeply accommodated the pledget.
We then waited for 15-20 minutes for maximum local anesthesia and vasoconstriction, then removed the pledgets and proceeded with nasal intubation.
I continued to use cocaine for nasal intubation until I moved to the University of Virginia in 1983; for whatever reasons, the drug wasn't part of our therapeutic armamentarium there, rather lidocaine with epinephrine was employed in the same manner as cocaine solution and produced equivalent results.
It's not just used in palliative care (though it is certainly used widely for that). As I understand it, in the UK diamorphine is prescribed for lots of types of acute, severe pain, including pain from surgery, heart attack and childbirth.
Good to know. I read that many, many years ago (it was printed on paper!), but obviously things change. Still Schedule I (no accepted medical use, i.e., totally illegal) in the US.
My wife, a PhD student at the time, was tasked with delivering cocaine to another university's research lab. I believe they were administering it to mice, I don't know much else. Anyway, my wife agrees and proceeds to take a public bus with an illicit substance and no accompanying permit or documentation. Wild.
There were multiple, I think they were called 1p-LSD, 1cp-LSD, 1d-LSD, 1v-LSD and currently you can still legally buy 1S-LSD. Its a bit of whack-a-mole with the lawmakers because there isnt a blanket ban, only ever the specific chemical gets banned. Although stuff got quite a lot more expensive with every iteration.
Prior to those there were LSZ (lysergic acid dimethylazetidide) and AL-LAD doing the rounds in the UK. Very briefly PARGY-LAD too.
1P-LSD was something of a breakthrough IIRC (never tried it but I was still following the scene at that point) because unlike the others it is a pro-drug for LSD, being quickly metabolised to the parent compound, rather than a different but closely related compound as the others were.
Never heard of the rest of those though! I stopped paying attention sometime around then.
Not quite the specific chemicals anymore. As I understood it, when they outlawed 1v, the legislation was changed to also consider the weight of the molecule. Ok fine, still whack-a-mole, it just took the clandestine chemists slightly longer to figure out what mostly inert structures they could add to the LSD (though not actually add, since that would mean they were at some point making LSD, which is illegal) that would be cleaved off metabolically so you end up with LSD in your system
reply