• 0 Posts
  • 28 Comments
Joined 1 month ago
cake
Cake day: August 22nd, 2025

help-circle

  • You could just limit the precision of the float. If you are writing banking software or something you could just add a special case to flip flop the remainder or something. I think pretty much all modern languages support this. You should also be using doubles for any numbers that could potentially grow really large like fiat currencies. The issues with floats really is that it will often favor precision over range. You could end up with lots of numbers after a decimal and very little integer range which could cause overruns or something.


  • In steamos, you have what is called an immutable file system. This means if you try to install anything outside of a flat pack in the user directory it gets wiped on updates and maybe reboots. This is probably because the VPN is trying to install something lower than the user level and so it breaks, and so it’s only working temporarily. Idk though.

    You have basically two options. You can hack steamOS a bit, mount the system as rewritable, and install an overlay file system, and write a system D script to do this at boot, but a better way would be to download bazzite and install it on your steam deck. It has a ostree file system which is annoying in its own way but it’s relatively easy to install software and modify the system with. All you really have to do is follow a guide on the internet to download the ISO, copying it to a thumb drive, and boot using the power+volume down key to install it.

    This will solve most of your issues, but you have to learn to use the fedora system which is a bit different mainly that you use rpm-ostree to install software rpm files if you don’t have a flat pack.

    Flatpacks are great for many things, but for installing lower level stuff you might need to install it to the actual system with rpm-ostree in fedora or pacman or whatever in arch which is what the native steam deck is built on if you have the hack in place.

    You can also try another VPN which might work better. It may or may not work.

    I would just install bazzite until steamdeck catches up a bit. Get KDE if you want a steam deck like experience.

    Also after bazzite, id get protonup-qt, to install proton-GE versions which make some games run work much better due to it’s better .net implementation and shader code. Bazzite also has a better flat pack repository out of the box. The steamdeck repositories have a lot of common software missing.

    You should also overclock the CPU to 4.0 ghz which should be stable on most decks. I wouldn’t mess with the voltages because this causes issues in many games. Don’t do this before you install an operating system, do it and rest for a few days with a known working config to make sure it’s not crashing more often. This overclock will help many games run much better, especially sim and strategy games. The option to change this is (fClockMaxOverride), and the value that you would set is 4000 you have to patch the bios, maybe downgrade it, and download a tool called smokeless_UMAF to do this. I downgraded my bios using steam deck bios manager to 106, and used some script I forget to patch it to unlock the debug options. Bios 106 which gives the best compatibility with overclocking in my experience. This won’t make the GPU any better which is the main bottleneck in most games, and overclocking the GPU in my experience caused thermal throttling and stuttering, but overclocking the CPU is a nice boost in many games and also improves the feel of the device. If you combine this with smokeless_UMAF you can add 2 w to the tdp, 2w in my experience is about all you can add before getting your SoC in the 90+ range, but you also have to write a systemD script to use ryzenadj to set this on boot, or use a desktop script to set the TDP in the desktop. Every time you open the bios however without snoklessUMAF, if sets the max TDP back to 15.

    I also disabled performance limitations reason, which allows the GPU and CPU to draw the full 17w. If you need help with any of this feel free to message me and I’ll get back to you when I can.

    For right now, if that seems like too much, you should just try to get bazzite on a USB.

    Personally what I do is I use a windows PC to format it into fat or fat32 or whatever the thumb drive needs. You can do this in Linux but I always have issues trying to format drives into fat on linux, I use a program off the flat pack store or whatever to copy the ISO.

    Then I go into the bios and disable TPM, and if available on some systems, disable uefi, and go back to legacy boot, and install bazzite. (UEFI and TPM are trash) Disabling either of these will likely break whatever OS you are currently running.

    Then in the setup after you boot from the USB, you need to set it up to delete everything on the drive, and then let it auto install on the drive. After you install, let it sit for a while and you can install some of your stuff like firefox and log into your stuff. Then shut the machine down fully and repower it if you decide to do any updates. This really helps.

    Install proton-GE, maybe think downgrading your bios or overclocking. Set up your extra drives on steam. Ask chatGPT to help you understand how to add your drives to auto mount with the fstab file lol, oh Linux. You don’t have to do that immediately. Maybe a project one day.

    Anyways like I said, hmu if you need help.







  • I would never want a verified bootloader on my device. I’d much rather have an open user friendly bootloader. All you need is for sd cards to not be the default option and not allowing the boot to be written to except in the bios. Verified bootloaders mostly exist to keep people out of their own devices and to get rid of freedom with software. They do it because at first they wanted to protect their DRM and now because they want to make sure you can only access stuff Google or apple approves of. Everyone knew that’s what they were doing and they denied it and they knew what they were doing anyways. Corporations just do not want people to be able to make their own decisions about stuff. Platforms like YouTube used to be amazing in the early internet days. A treasure trove of knowledge and perspectives and amazing mature content. Now it’s algorithmically controlled brainwashing and corporate gatekeeping of knowledge.

    Really the only security you need is to have up-to-date patched web resources, and port blocking if you are t completely unaware of computer security. It’s not bad to have an option for a safer level of access for people who don’t know, but they went way beyond this to keep actual tech literate people out of their devices. Anything beyond those basic security measures are essentially useless anyways because they are going to rely on zero day exploits which people cannot anticipate. In fact most developer tools that arent android studio on a pixel device or something rely heavily on zero days and hardware bugs to get root access. What did Google do? They tried to redesign Linux to be a rootless and immutable file system. I honestly hate all of that and I just want to put Debian on a phone with working cell radios so I can use it as a cell phone. I don’t even care about YouTube anymore it’s essentially useless now. I’m just going to get the cheapest phone I can and leave it in the car with no data plan and build my own portable device running Linux so I can download stuff I want to listen to at work instead of using their trash. That will piss them off anyways if you leave your phone in the truck because the government will get paranoid that you are talking about something they don’t want you to talk about and it will piss off Google because your data will be less valuable to them. If many people start doing this, leaving their phones in their vehicles at work, or in the house instead of carrying them, because they have become almost entirely useless unless you want to consume tictok brain rot, they might actually realize that they went to far. Since I know people can’t be bothered to protest, I realize that they only thing I can do is just try to create my own solutions. I bought some raspberry pis a few years ago for this very reason just in case the UnS went full fascist. I keep old cell phones around that I know have exploits so I can install what I want on them and not get stuck in the big tech cartel of mind control and surveillance.


  • What kind of ideology is not wanting corporations to control your access information and stuff you buy? That doesn’t make any sense. That’s not an ideology that’s just something everyone wants.

    Also there is nothing unsafe about the network idea if you use encryption like every other computer for the past 30 years.

    I have considered getting a pixel phone. I had one but the screen broke in my pocket I think which annoyed me. I have a Motorola phone with an unlockable bootloader but the chip set is dumb so it makes getting the one ROM available for it, difficult to put on there, and also you have to do a lot of stuff to get the ROM to have most of its basic features working.

    You are using the word ideology incorrectly. An ideology is an overarching vague and large idea that encompasses political systems. It’s things like fascism or capitalism or socialism. I don’t see how any of that has anything to do with things like human rights and freedom which is universally desired by all people. Even fascists want privacy they are just too dumb to realize a total state isn’t going to give it to them.



  • Literally a government backed monopoly funded with trillions of take payer dollars at this point. When I run for president one day, besides things like completely banning 100% private political campaigns and proganda, one of the first things im going to do is force the FCC to create a wide pocket of bandwidth for a open source and private mesh networks with a range of around 20-50 miles between devices with fallback modes of hundreds of miles, and maybe another fall back mode for thousands if antenna size allows for this inside cell phones. That way we can control our own cell phones and have a citizen licensed cell network.



  • I have been trying to find a single open device to replace my android phone with for over a month now. Every single one of these devices are only sold with support for European cell networks. The radios inside American cells phones are controlled by parents and property standards so that you literally cannot buy a device that can access the network without one of their radios(which is a fully programmable tracking device almost hidden to the OS BTW) you cannot reproduce or even modify the radios due to this horrible law in the U.S called DMCA, which means if a device has any drm software on it at all, which is basically everything nowadays you can get sued by the company that made it by making any modifications to the device that they don’t approve of.

    It’s not disinfo, I know the facts and I don’t deal in lies and disinfo. I research everything I say extensively and verify it myself.





  • You can divide stuff up into memory however you want, into objects, arrays, whatever. Generally speaking the GPU memory is used for things which will run fast in the streaming processors of the GPU. They are small processors specialized for a limited set of tasks that involve 3D rendering. The types of thing you would have in GPU memory are textures, models, shader scripts, various buffers created to store data for rendering passes like lighting and shadow, zbuffers, and the frame buffer and stuff.

    Other things are kept in the ram and are used by the CPU which has many instruction sets and many optimizations for different types of tasks. CPUs are really good at running unpredictable code. They have very large and complex cores which do all kinds of things like branch prediction( taking several paths through code ahead of time when there is free time available) it has direct access to the PCI bus and access things like the south and north bridge, storage controller, io devices, etc.

    Generally on a game engine most of the actual logic is happening on the CPU because this is very complex and arbitrary code that is calculation heavy. Things like the level data, AI, collisions, physics, streaming data and stuff is handled by the CPU. The CPU prepares frames by batching many things into one call to the GPU. This is because the GPU is good at taking a command from the CPU and performing that task many times simultaneously. Things like pixels for example. If the CPU had to send every instruction to the GPU in sequence it would be very slow. This is because of the physical distance between the GPU and CPU and also just that a script would only do one thing at a time in a loop. Shaders are different. They are like running a function across a large data set utilizing the 1000 + cores in an average modern GPU.

    There are other differences as well. The CPU has access to low latency memory where the GPU prefers higher latency but high bandwidth memory. This is because the types of operations the GPU is doing are much more predictable and consistent. CPUs are very arbitrary and often the CPU might end up taking a path that is unusual so the memory it has to access might be scattered and arbitrary.

    So basically most of the game engine and game logic runs in memory because it’s essentially a sequential program that is very linear and arbitrary and because the CPU has many tools in its tool boxes for different tasks, like AVX, SSE, and stuff like this. Most of the visual stuff like 3D transformation and shading and sampling take place on the GPU because its high bandwidth and highly parallel yet with some cores, yet you have many of them that can operate independently.

    Ram is very useful but is always limited by console tech. It is particularly important in more interactive and sandboxy type games. Stuff like voxels. It also comes in handy when running sim or rts games. Engines are usually designed around console specs so they can release on those platforms. It can be used for anything even rendering, but it is extremely slow compared to GPU memory in actual bandwidth, which is usually less then an inch away from the actual GPU and has a large bus interface, something like 128-512 bit. This is how many physical wires connect the memory chip to the GPU. It limits how much data you can send in one chunk or cycle. With a 64 bit interface you can only send one 64 bit word at a time. Many processes can pack 4 of those into a 256 word and send them at once getting a 4x speed increase on a 256 bit bus, or 8x speed on a 512 bit bus.

    So you have higher bandwidth, high latency memory on a wide bus which feeds a very predictable set of many simple processors. Usually when you want to load memory into the GPU you have to prepare it with the CPU and send it over the PCI bus. This is far too slow to actually use system ram to augment the GPU ram. It’s slow in latency and ram, so if you were to do so, your GPU will be sitting idle like 80% of the time waiting on packets, and then it will only get a 64 or 128 bit packet from the ram, not to mention the CPU overhead of constantly managing the memory in real time.

    Having high ram requirements wouldn’t be the worse thing in the world because it’s cheap and can really help some types of games which have large and complex worlds with lots of physics and things happening. Ram is cheap. Not optimizing for GPUs is pretty bad especially with prices these days. That will not happen much because games tend to be written in languages like C++ which manage memory in a very low level way, so they tend to just take about as much as they need. One of the biggest reasons you use a language like C++ to write game engines is because you can decide how and when to allocate and free memory. This prevents stuttering. If the system is handling memory you tend to get a good deal of stuttering because the CPU will get loaded for half a sec here and there as the garbage collector tries to free 2 GBs of memory or something. This tends to make games engines very structured when it comes to the amount of memory they use. Since they are mostly trying to reuse code as much as possible, and are targeting consoles, they usually just aim for the amount of ram they know they will have on consoles. Things like extra draw distance on PCs and stuff can use more memory.

    LODs can be generated in real time but this is slow. You can do nearly anything with code. It’s just if it’s a good fit for your application. In a game engine every cycle is precious. You are updating the entire scene, moving all your data, preparing a frame, resolving all interactions, running scripts, and everything else in just over 16 ms for 60 fps. The amount of data your PC in processing in just 16 ms will blow your mind. Usually 3-12 passes in the renderer. A very simple engine will draw a zbuffer, where during this 16 ms it determines the distance to the closest object behind every pixel, then using this data to figure out what needs to actually be drawn. Then it’s taking these objects and resolving the normals, basically figuring out if the polygon is facing towards or away from the player. This is cutting out rendering the vast majority of polygons. Then the lighting data and everything is combined with this and sent to the GPU which actually goes through a list of polygons need to be drawn, and then looking up the points to draw the polygons. It’s also casting rays from a light source and shading the scene. This is very simple, basically a quake or doom like game. Modern games are much more complex. They draw each frame many times with many different buffers Generating different data and using it for the next pass. Generating LODs is just something that isn’t done unless needed for some reason, like dynamic terrain or voxel terrain. In a game that is mostly static geometry there is not really any reason to give up that compute time when you can just pregen them. Generating LODs in real time is quite a process. You have to load a region into memory, reduce it’s polygon, downsize the texture. Generate a new mesh and texture, and place it in the world. This would be a back and forth between the GPU and CPU. Some games do it however. 7dtd, space engineers, Minecraft with a distant terrain mod, and I’m sure many others generate LODs on another thread, but these are usually fairly low quality meshes.



  • That was a reference to a video I saw, something like, trying to play borderlands at 60 FPS on a $4k computer.

    2k is about the minimum these days for a full system when you include taxes and shipping. That will get you a midrange system. You can get lower end stuff or buy a used graphics card. Personally I’m still rocking a 1070 and it’s excellent for like 99% of games. I’m lucky that the handful of games that won’t run on it I don’t care about anyways.

    Also a less known fact, real inflation, not government reported is probably close to 100% over the past 10 years. So really a $2000 machine today is the same as a $1000 computer 10-15 years ago. Our wages didn’t go up of course. That’s the whole point of a fiat currency and inflation! It’s a clever and sneaky wealth tax. It’s a way to cut your wages quickly in a way that 90% of people don’t understand. They just yell at the gas station clerk because their soda is nearly $5. Their poor little brains can’t conceive of a concept so sophisticated as they are actually being payed less, stuff doesn’t cost more. People aren’t going to make stuff for free and give it to them. It’s just not a simple number so it confuses them. If businesses had to adjust your pay to match real inflation, guess what?, there would be no inflation and no fiat currency. No reason for it to exist because they couldn’t screw us out of our wages without telling us to our face Just extra paperwork and time for managers, little fake economic growth and no unnatural bubbling of markets.