AndrewPGameDev
Joined 3 years ago
Joined 3 years ago
Ross from Accursed Farms said this in a video FAQ on youtube:
" Would this initiative affect subscription games? Well, that's another question that depends on what the EU says. Personally, I think it's very unlikely because that doesn't fit well with other existing consumer laws. I think the only way you could even make that argument would be that this is necessary for preservation and most governments don't seem to care about that at all. However, I don't think this is a huge loss, since only a handful of games operate that way today. So if we can give up those but then save 99% of other games, I'm willing to make that bargain. "
so it seems like they actually are suggesting that they'd like for (a law that came out of) SKG to apply to subscription games but there's an understanding that it probably won't.
Let me start with the pros:
1. Don't have to learn 2 different languages
2. Modules, crates, and the easier ability to share code
3. Easier sharing between rust structs and shader code.
Now the cons, in comparison to Slang [1]
1. No autodiff mode 2. Strictly outputs SPIR-V, while Slang can do CPU, CUDA, Pytorch, Optix, and all the major graphics APIs
3. Less support - Slang is supported by the Khronos group, and Slang gets use at Nvidia, EA, and Valve.
4. Safety isn't very valuable, most GPU code does not use pointers (it's so rare it's considered a feature by Slang!)
5. slangc probably runs a lot faster than rustc (although I would like to see a benchmark.)
6. Worse debugging experience, slang has better interop with things like NSight Graphics, and their Shader Debugger. Slang recently got support in NSight graphics for shader profiling, for example.
7. Slang has support for reflection, and has a C++ api to directly output a JSON file that contains all the reflected aspects.This makes handling the movement between rust <-> gpu much easier. Also, the example shown on the website uses `bytemuck`, but `bytemuck` won't take into consideration the struct alignment rules[2] when using WebGPU. Instead, you have to use a crate like `encase`[3] to handle that. I'm not sure given the example on the website how it would work with WebGPU.
8. If you have pre-existing shaders in GLSL or HLSL, you can use slangc directly on them. No need to rewrite.
9. In reality, you may not have to learn 2 languages but you have to learn 2 different compute models (CPU vs GPU). This is actually a much harder issue, and AFAICT it is impossible to overcome with a different language. The problem is the programmer needs to understand how the platforms are different.
[1] https://shader-slang.org/ [2] https://webgpufundamentals.org/webgpu/lessons/resources/wgsl... WGSL struct alignment widget [3] https://github.com/teoxoy/encase
Basically, the USA essentially disproves the idea that nationwide GDP is the most important factor in standards of living. US share of world GDP has been relatively constant, world GDP has increased dramatically, but American life has not improved dramatically (although it has improved more than what most people think).
Instead of singularly focusing on wealth, nation-building programs should focus on the broader idea of (re)building the social contract. In the Balkans that means building an environment where modern capitalism can effectively take place. In America that means rebuilding trust in institutions and building a better safety net for poor citizens. Often this involves what amounts to a direct wealth transfer from the rich to the poor, as this all has a cost and the rich are the only ones who are even capable of paying for it in the first place.
I would feel horribly patronized in this scenario. I don't go golfing to get better at it, I go golfing to relax. Similarly someone can program and not necessarily want to be better at it. It depends on their goals and desires. Giving someone advice before asking means you have to guess at what their goal even is. In many contexts (work) this is fine but in general it is not.
To answer your question, the reason why someone might reasonably take offense to unsolicited advice is that unsolicited advice is inherently condescending because it implies that the advisor knows more about the topic than the advisee. It also implies that the advisor knows the advisees skill level and goals. It's kinda insulting, and in another way it's almost controlling as the advisor reframes the discussion around "being good at X". I don't want to be good at golf, I want to enjoy my time golfing.
(Suppose, as it hasn't been tested that the) SpaceX Starship can carry up to 100 tons of material to LEO. It costs 100 million USD per launch. (11,000 tons / 100 tons) * 100 million USD = 11 billion dollars. The US Department of Energy (DOE) has a budget of 149 billion, so under these pessimistic conditions it would cost around 7% of the budget. That's not good, but its not crazy either.
Elon Musk has stated that he thinks the cost of launching Starship will go down to 10 million per launch in the next 2-3 years (not sure if thats realistic). On the other hand, we probably don't want to unload a bunch of nuclear material in LEO, but much further away from Earth.
Just watched the Kurzgesagt video. They make the point that more radioactive material is put into the world by burning coal, which I think is a valid point. They use the Falcon 9 exclusively to calculate the cost of launching, and they never indicate in the video that the cost of putting 1 kg of material into space might go down. Falcon Heavy can already launch (reusable) 63.8 tons to LEO at a cost of 97 million, which is around 1500USD/kg instead of the 4000 they cite.
They also strangely compare it to the cost of the fissile material, which doesn't make any sense as the majority of the cost for a nuclear reactor is in safety precautions, not in the actual production of nuclear fuel.
In their sources they're a little less forward:
Electricity from nuclear reactors is produced for about $70 per MWh, which is 7 cents per kWh. The fuel costs represent just 0.46 cents per kWh or 6.5% of the total cost.
If we had to get rid of nuclear waste by putting it on rockets, causing fuel costs to rise 3.4 times to 1.57 cents per kWh, the total cost would be increased to 8.1 cents per kWh. This means the total cost becomes 16%
higher.
In the video they state "In 2021, we saw a record 135 launches into space. If we repurposed each of those rockets and filled them all with nuclear waste, the total amount that could be lifted into a Low Earth Orbit, which is the closest orbit above the atmosphere, is nearly 800 tonnes. "And then they extrapolate this out to... forever, I guess? Either way there were 178 successful launches in 2022. There have already been 123 (successful) launches in 2023. Regardless it seems reasonable to expect this number to go up and the average tonnage per rocket to go up. It just seems strange to make this video that is very explicitly only about 2021 and to have the economics change so much even in 2 years. I would've preferred if they stated in the video that it doesn't make sense today, but it could in 5 or 50 years, and made more arguments in favor of storing it deep underground.
---
The biggest risk (as another commenter mentioned) is the massive risk to the environment by trying to shoot it into space. If we really needed to get rid of it, we could bury it under a mountain for 100 years, dig it back up, and shoot it into space when the cost is much lower, and its much safer to launch.
Or just never launch it at all. I don't really buy the idea that burying nuclear waste in remote areas is dangerous. Critics say that the problem is that you have to keep waste contained continuously (say for the next 10,000 years) but I'm near certain we will have some way of truly getting rid of it in the next 500 years. Whether that's blasting it into space or reprocessing or something else entirely.
try {
Validation validation = validate();
try {
Value value = update_db(validation);
send_email(value);
} catch (DBError db) {
try {
sleep(5);
Value value = update_db(validation);
send_email(value);
} catch(InterruptedException ie) {
// do nothing, stupid java-ism
} catch(DBError db2) {
try {
Value value = update_db_remote(validation);
send_email(value);
} catch (DBError db3) {
notify_user(db3);
} catch (EmailFailedError e) {
requeue_email(e);
}
} catch (EmailFailedError e) {
requeue_email(e);
}
} catch (EmailFailedError e) {
requeue_email(e);
}
} catch(ValidationError v) {
notify_user(v);
}
https://gist.github.com/Andrewp2/9d97bd213b061166d6df565ce26...IMHO this is much worse than the railway version you gave, but maybe someone could write a superior version that still uses try-catch.
Additionally Wgpu (the library) will insert fences between all passes that have a read-write dependency on a binding, even if there is technically no fence needed as 2 passes might not access the same indices.
Finally I know that there is an algorithm called decoupled look back that can speed up prefix sums, but it requires a forward-progress guarantee. All recent NVIDIA cards can run it but I don't think AMD can, so WebGPU can't in general. Raph Levien has a blog post on the subject https://raphlinus.github.io/gpu/2021/11/17/prefix-sum-portab...
Regardless, I don't think I'm going to be super hyped about the LK-99 story until we see some replication, which should hopefully happen within a couple days.
I'll just reproduce FatalLogic's last comment here:
""" In the class action case[0], which was allowed to go forward by the court last year, it is claimed that Valve told someone:
"This includes communications from Valve that “‘the price on Steam [must be] competitive with where it’s being sold elsewhere’” and that Valve “‘wouldn’t be OK with selling games on Steam if they are available at better prices on other stores, even if they didn’t use Steam keys.’” Dkt. No. 343 ¶ 158, 160 (quoting emails produced at VALVE_ANT_0598921, 0605087). "
(This is a new case, not the 2021 suit, which was rejected by the court, then amended and refiled, later with an additional plaintiff added)
[0]https://storage.courtlistener.com/recap/gov.uscourts.wawd.29... """
So a US court of law has decided that it's at least possible that this isn't true.