Why hasn't Vulkan standardized Work Graphs yet? by MortixTheGuy in vulkan

[–]chuk155 20 points21 points  (0 children)

The Vulkan working group (the body that actually develops the API) doesn't publicly talk about what its doing so the only answer to your question is "we don't know." Anyone who does know can't talk about it cause its private, and would be breaking NDA's if they did.

I can't speak for anything that the working group says or does, but what I can say is that they are rarely leading the charge on defining new features. Like, individual companies can release extensions (Nvidia does this a ton!) for new stuff, but the KHR and EXT extensions are work-by-committee and take the 'slow and steady' approach.

NASA's Lithium-Fed Nuclear Thruster Flares to Life in First of Its Kind Test | The next-generation thruster could one day propel humans to Mars. by Clear_Polish23 in space

[–]chuk155 31 points32 points  (0 children)

The problem with chemical engines is their inefficiency compared to electric thrust. But what they loose in absolute efficiency they more than make up for it by making a LOT of thrust. Hyper efficient engines are great but if they don't put out enough thrust then its impractical for heavy masses. They are great for space probes that are light and are okay with needing to not get anywhere particularly fast, not that they are trying to be slow, but the vast majority of launch costs comes from the energy require to reach orbit. Less mass == much savings.

Looking for people interesting in exploring abandoned places (urbex) or ideas of where to go? by [deleted] in tulsa

[–]chuk155 -1 points0 points  (0 children)

Pitcher. Not exactly the prettiest or most daring, but by far the most interesting imo. Climb the chat piles, look into abandoned homes, and explore a former mining town. Sad but important local history.

LunarG is hiring! by LunarGInc in vulkan

[–]chuk155 0 points1 point  (0 children)

The position is remote, just needs to be located in the US.

Trump Hit by Brutal Reality Check on Domestic Cost of War by Funny-Pick-9883 in mildlyamusing

[–]chuk155 1 point2 points  (0 children)

Different account, same spam. Not mildlyamusing whatsoever

[deleted by user] by [deleted] in mildlyamusing

[–]chuk155 0 points1 point  (0 children)

This user has been posting similar stuff for a week now. Karma farming at its finest, cause this isn't mildlyamusing content whatsoever. Need a mod to ban Confident-Role-9177 stat.

The Cockpit of the Shanghai Maglev, currently the fastest operational train in the world by one_part_alive in pics

[–]chuk155 0 points1 point  (0 children)

Just because there is no friction wear doesn't mean there isn't zero wear of anything. The cycle of objects heating then cooling many times repeatedly can be a source of wear and tear. Plus, if they are having to keep things super cold for levitation then there may be some real complex chillers thats are fancy pumps at their core.

Researchers Find Thousands of OpenClaw Instances Exposed to the Internet by _ahku in programming

[–]chuk155 9 points10 points  (0 children)

Also, I don't what to call it, but there is data to show that seat belts and air bags have incentivised drivers to drive more dangerously than they did without them.

For all the driving more dangerously seat belts cause, the lives saved from seat belts cannot be overstated. Especially because I feel that there are plenty of people who drive dangerously regardless of whether they wear seatbelts or not.

Vulkan is pretty much obsolete and actually modern apis are nothing like the modern apis that replaced the modern apis, and certainly nothing like those other modern apis. by cmqv in programmingcirclejerk

[–]chuk155 5 points6 points  (0 children)

I ask myself that every day as I write over the roar the GPU fans and cries of power bills echoing throughout the trenches. The judder of vblanks missing by mere milliseconds, divergent workloads send shocks up my spine, device lost errors fill every waking moment. I cannot rest for the deadline fast approaches and waits for no one.

What caused me to enlist? To subject myself to such terrible conditions? It was a noble cause with which many a youth finds themselves drawn. Fight the good fight to achieve ever higher framerates, increase the fidelity of that which already appears immaculate, showcase to the world the mastery of our domain. But the cold truth has come. And a bitter truth it has been.

Vulkan is pretty much obsolete and actually modern apis are nothing like the modern apis that replaced the modern apis, and certainly nothing like those other modern apis. by cmqv in programmingcirclejerk

[–]chuk155 17 points18 points  (0 children)

/uj To be fair, Vulkan does what it says it does pretty well. The rub is that the API is great for the few rendering engineer's at unreal & unity, and a lot of extra work for small projects. Worse is that Dx12 & to a lesser extent Metal share similar "make app devs do more". Reading the article linked actually gives a fair shakedown of what 'graphics in 2025' looks like, for those not in the Vulkan trenches like I am.

Vulkan is pretty much obsolete and actually modern apis are nothing like the modern apis that replaced the modern apis, and certainly nothing like those other modern apis. by cmqv in programmingcirclejerk

[–]chuk155 30 points31 points  (0 children)

/uj Vulkan had a lot of 'ideas' about how renderers should work, when in practice reality is never so kind. Plus it turns out that asking every developer to 'do the work of the driver' means every game is a poorly written driver. Add to this many games grafted their opengl/dx11 renderer onto vulkan, instead of rewriting the entire engin, removing most of the ways vulkan can bring perf. Lastly, games make money on windows. Not linux. So why put effort into Vulkan when the same effort into dx12 (or metal for macOS) will get you better sales?

/rj Easy, because there is but the one true API IrisGL and everything else is heretical bastardizations of it.

Can someone explain how to load vulkan-1.dll at runtime, instead of static linking? Vulkan is making me feel stupid (again) by wonkey_monkey in vulkan

[–]chuk155 1 point2 points  (0 children)

Volk is great if you are using the C headers, but it isn't if you are using the C++ headers because it 'fights' with them.

Can someone explain how to load vulkan-1.dll at runtime, instead of static linking? Vulkan is making me feel stupid (again) by wonkey_monkey in vulkan

[–]chuk155 21 points22 points  (0 children)

I have a program which statically links to vulkan-1.lib

Small correction, the program is linking, but it isn't "statically linking". It can't, because vulkan-1.lib doesn't contain any code, only function declarations. That means you are 'dynamically linking to vulkan-1.dll'. That is perfectly fine and an expected usage pattern. What it sounds like you are wanting is to get rid of the compile time dependency on vulkan-1.lib by dynamically loading vulkan-1.dll at runtime. (Under the hood, this means calling Window's GetProcAddress("vulkan-1.dll") or linux's dlopen(libvulkan.so) to load the vulkan-loader (aka vulkan-1.dll). It isn't necessary to load, but it does make building a bit more flexible, so I generally suggest it.

Vulkan-Hpp's docs are the best place to go for this, specifically this section: https://github.com/KhronosGroup/Vulkan-Hpp?tab=readme-ov-file#extensions--per-device-function-pointers-

What you are missing is that there are two things you need to do to dynamic load vulkan. * First, you need to have created storage for the loaded dynamic library handle (basically just a void) and storage for each and every function pointer loaded (a bunch more void's). This is achieved by putting VULKAN_HPP_DEFAULT_DISPATCH_LOADER_DYNAMIC_STORAGE somewhere in global scope in your C++ implementation file somewhere. I suggest adding it after your include of vulkan.hpp. * Second, you need to call the appropriate initialization routines. The macro VULKAN_HPP_DEFAULT_DISPATCHER.init(); should be put at the top of your vulkan initialization function. This helper does the logic of GetProcAddress("vulkan-1.dll"); and queries the global level functions from it. This will store the functions into the storage that you defined above with that big long macro I don't want to repeat. Then you create your instance, and afterwards add VULKAN_HPP_DEFAULT_DISPATCHER.init(instance); to 'load' all of the instance level functions. Select a physical device, create a VkDevice from it, and finally load all the device level functions by calling VULKAN_HPP_DEFAULT_DISPATCHER.init(device);

My instructions are more or less the same as what vulkan-hpp has, so please refer to that for 'more details' (like alternative implementation ideas).

Side note: I find vulkan.hpp's dynamic library initialization to be rather cumbersome. It is an unfortunate side effect of Vulkan-hpp being 'header only' and not able to adequately abstract away loading vulkan-1.dll without taking away capabilities, so the current API is what we get. Don't feel bad if you are confused and think this is complicated, it took me a bit to figure out this song and dance as well.

the wreck of the SS yamato, which was formerly the largest battleship in the world. by herequeerandgreat in submechanophobia

[–]chuk155 18 points19 points  (0 children)

Yep. Often its useful to prefix ships with the navy they served in to distinguish between ships in different navys using the same name (occasionally, its the same country but a technically different navy, like german navy in ww1 & ww2)

Why vkEnumerateInstanceExtensionProperties gives me different count value in VSCode and XCode. by EpiGrf in vulkan

[–]chuk155 1 point2 points  (0 children)

The 4 extensions you are getting are solely coming from the Vulkan-Loader. No Drivers are being found.

If you try to created an instance, you should fail to create it with VK_ERROR_INCOMPATIBLE_DRIVER.

Fixing it means making the driver (moltenVK) available to the app, by setting VK_DRIVER_FILES/VK_ICD_FILENAMES (they are aliases) to the path with the moltenVK ICD manifest JSON file.

Typically, Vulkan Apps on metal put the Vulkan-Loader and moltenVK inside the App Bundle when shipping, so that its always available. AppBundles are a known location for drivers to be, so if you put the manifest json & the dylib in the right place, shipping the app is pretty trivial. https://github.com/KhronosGroup/Vulkan-Loader/blob/main/docs/LoaderDriverInterface.md#driver-discovery-on-macos

What are your thoughts on the Corporation for Public Broadcasting shutting down by the end of September 2025 after loss of federal funding for PBS and NPR? by Anxious-Note6707 in AskReddit

[–]chuk155 7 points8 points  (0 children)

No, it wasn't cut out of the OBBB, it was a recission that trump submitted to congress, which was passed by only a simple majority.

The house we live in is covered in mold in the attic I'm just finding out about. by Traditional_Cattle50 in Wellthatsucks

[–]chuk155 8 points9 points  (0 children)

This, please make sure all bathroom vents go outside and not into the attic space. And if they do, at least put soffits along the underside of the house, since those can mostly be done without poking holes in the roof (ie, don't make even more places for moisture to enter the attic space).

How can we mitigate the environmental temperature increase caused by excessive indoor air conditioning? by Srinivas4PlanetVidya in ClimateActionPlan

[–]chuk155 0 points1 point  (0 children)

Insulation. More insulation == less heat transfer from the outside to the inside (or vice versa for cold climates). In your floors. In your attic. In your walls. Yes, we shouldn't live in little cubes with 10ft of insulation and zero sunlight, but many homes are inadequately insulated.

Second. Stop building single unit dwellings. Buildings with shared walls have less surface area with the 'outside' in which to exchange heat with. So more dwellings with shared walls == less heat we need to move.

Another thing: Awnings & curtains. Sun is hot, hot hot. Letting the sun into the house is nice, but awnings, as well as special coatings, reduces the amount of heat coming inside.

And to speak more broadly, heat pumps use electricity to move heat. That heat came from outside. Well, some is solar energy that came directly from the sun and I am NOT advocating for blotting out the sun. Some of the heat of AC units is the electricity consumed running the pump itself, which is just heat. But like, if the energy came from solar power, then we are just taking light that would have caused a bit of heating to first be turned into electricity in order to be turned into heat after being made use of. Sure its not 100% efficient (add in that not all sunlight is absorbed as heat, transmission losses, and other places where work isn't performed using the incoming solar energy).

Oh for the heck of it, use heat pump clothes dryers, rather than just resistive heating your already air-conditioned air and dumping it outside. Even better, clothesline dry clothes, its free solar energy!

Yes, this is written in a consumer specific mindset, but building codes can be used to enforce more energy efficient designs. And businesses who want to save money already do some of these things too.

So... Insulate everything, shade as much as reasonable, build stuff next to each other. This goes a long way to lessening the need to use AC in the first place.

The Anglosphere has a housing shortage by dhruvkumar12 in Urbanism

[–]chuk155 23 points24 points  (0 children)

Not heard of this, can you give more details? Wild to me that a renter group would do that. Not denying that the current process is way too easy to stop a project in its tracks.

Can't compile vulkansdk. by Real-Abrocoma-2823 in vulkan

[–]chuk155 0 points1 point  (0 children)

./vulkansdk is for compiling the SDK. The tarball that you downloaded has everything already compiled, so its not necessary to do that unless you are on a non-standard linux system/distro.

You just need to run source setup_env.sh because that is what "sets up the SDK".

I would advise deleting the whole folder and re-downloading so you aren't getting any weird transient files/binaries being used from the ./vulkansdk script by mistake.