• 0 Posts
  • 54 Comments
Joined 3 years ago
cake
Cake day: June 14th, 2023

help-circle
  • Video game development is probably the wrong skill for GPU design - you might be the best racing car driver in the world but that doesn’t mean you know how to design an engine.

    If you’ve a few spare billions and a chip design, I’m sure a semiconductor fabricator will start running off the chips for you. The design is tough:

    • lots of memory cache, which is the same simple thing repeated billions of times

    • a shader core, which is essentially a simple cpu specialised in floating point, which you will then repeat thousands of times. Needs to be efficient, though, and the smaller you can make it the more you can repeat it

    • some extremely complicated interconnects and management circuitry, such that all your shader cores can read and write memory fast enough so that they can run at full speed

    • you’ll also need driver code to enable your new chip, implementing all of the DirectX, OpenGL and Vulkan specs, and tested against decades of games

    There was a time when chip design was a one-man job. Alas, that time was the late 70s. And your goal wouldn’t be to reproduce one of the early graphics cards from the late 90s either, much as I did love my Rage Pro 128 at the time. If you want to make something competitive with modern GPUs that can run modern games, you’re going to need a very large team of specialists and a lot of funding cash. Intel have been trying to do this for a decade, and they’re just catching up with NVIDIA and AMD now.





  • An NVidia GB300 fills a whole rack on a server, doesn’t have display outputs, draws 1.4 kW of electrical power, and requires mandatory liquid cooling capable of dissipating 1.4 kW of heat. Not a good match for a standard desktop system. I understand that they’re also optimised for churning through huge amounts of low-precision floating point, aka. an AI workload, rather than being truly general-purpose cards.

    If you have any use for eye-watering amounts of CUDA calculations, then they might come in handy. I remember back in the day, if you had two graphics cards in SLI, that the Batman: Arkham Asylum game gave you the option of either using both cards for rendering, or one card for rendering and one card dedicated to PhysX calculations. You could use one of these GPUs for amazingly good-looking fog effects, assuming you had another GPU capable of rendering the graphics and outputting it? Not very sensible, tho.

    I suspect that unless you work in a very compute-heavy industry (AI research, but maybe aerospace?) then you won’t have a use for these cards that would justify how expensive they are to run.


  • With my ‘security hat’ on, I’d have to say you shouldn’t use anything that’s no longer receiving updates. But that would create a lot of e-waste for no reason.

    To see if your phone’s browser is still receiving updates, you can browse to:

    https://emudhra.we-have-a-problem.com/

    That has a grid showing whether your browser was willing to connect to sites using the compromised keys. If your browser is using its own cert style and still receiving updates, should be all green ticks. If so, then you can still use the phone for browsing internet. Be aware that using other apps on your phone (like eg. your email app) could be read easily by third parties, especially if you’re connected to unfamiliar wifi.

    If it’s all red, maybe try another browser? Or relegate that device to being a dumb phone - switch off its data connection, phone calls only.


  • Assuming that the device hasn’t been updated yet, yeah, this is what it allows you to do.

    If you connect your device to a ‘fake’ router that’s completely under your control, then when the device attempts to connect to its remote server, you pretend to be it, and provide a certificate signed by this ‘trusted’ authority. Device will accept it. Make another connection to the real remote server. Decrypt what the device sends you, and send it on to the remote server; it’ll believe that you’re the android device, and respond with a message that you can decrypt, store, reencrypt with your fake key, and send it to the device. Repeat.

    You’ll only be able to impersonate the API until the keys are revoked by an update. That’s maybe not so useful. However, any other connection that can be MITM’d and include other personal information - your bank card details, say - can be read, too.


  • As regards the data centre equipment; the SSDs and hard drives used for storage would be reusable by regular people. Those will be nice to have.

    The memory is the high-bandwidth kind that is not be usable on consumer motherboards. The ‘graphics cards’ are the size of filling cabinets, require external power supplies and cooling, don’t have video outputs, don’t have drivers for graphics output. If you don’t have a requirement for serious parallel computation with a very high uptime, then it’s not worth the cost of powering them up. If/when the bubble bursts, all that shit is going to landfill.




  • If you’ve eg. a system service that allocated a whole pile of memory on startup, but hasn’t read or wrote it since, then copying it to swap during idle disk time is a good thing. If it does get used, then it’s still in RAM, and if memory pressure increases, then you can reuse it immediately because it’s already on disk, don’t have to wait to swap it out. You could give this functionality a catchy name like ‘swappiness’ so you could fine-tune how aggressively it’s done by setting the value in a file, too.

    Doesn’t stop Windows being a trash OS, of course, but if I’ve allocated swap then I want it to be used for best system performance.


  • Might be a controversial take, but Raspberry Pi’s are pure ass as media servers. They’re profoundly i/o limited, which extends to access to external USB devices as well as ethernet, and lack the oomph required to decode hi-res video streams locally. 1080p can be choppy, forget about 4K.

    Pi5 occupies the unhappy spot where it’s too expensive for enthusiast and hobby applications, but inadequate as a desktop PC which benefit from a bit more power.

    A mini-PC is a much better fit. An N100 might even be overkill - mine has a Skylake from a decade ago in it, and it crushes ‘media’ activities while gently sipping at electricity.


  • Java dev in charge of a $100M product here. Can’t actually compile it with less than 32 GB of RAM.

    My old job working with a hydraulic analysis firm, needed 256 GB to run the product it in local development mode; to run customer models in production was a mainframe job - typically multi-terabytes. Computational fluid dynamics eats all your memory and asks for more. My work computer would have been pretty shitty as a gaming desktop, but did have every memory slot maxed out.

    Yes, you might be working on something more lightweight, and that is fine. That doesn’t mean that your requirements are the be all and end all.



  • Outlook is lousy, but what gets me is the fact that basically all “email, calendar, rss and chat (maybe)” apps are pretty bad. You’d think someone would have implemented something better by now.

    Excel is perfect, PowerPoint doesn’t need to be any better.

    Word is a terrible text editor and its layout algorithm is lousy. You can make better-looking documents by converting markdown to html and then applying some css; modern browsers have much more sophisticated styling options than Word offers as “styles”. You can make much better looking documents with Latex, which is pushing fifty years old now.

    Both ways let you edit text files in a superior editor (which should be Vim, of course - the most superior editor). Collaborative working and revision history with Git, which runs none of the risk of Word just randomly deciding to shit itself when those features are enabled.

    Fine - Word can retain a “compatible layout” mode for all those ancient documents where people have paginated by pressing enter 17 times exactly, and the line-breaking, hyphenation, text colour etc. algorithms cannot be updated. But for the rest of us, let’s push things forward.


  • It lets you “add game”, but then gives you the choice of Linux / Windows with a Wine version / browser, and you have to put in the path.

    So for example, in Lutris I could have “every Zelda game” or “every Castlevania game” as a filter. Castlevania needs MSX, NES, Gameboy, SNES, N64, DS, PSX, PS2, and Wii emulation; and one of (Steam, or PS3 or X360 emulation) to be reasonably complete.

    I suppose I could create a Linux shell script that daisy-chains into the correct emulator, but that would be quite clunky compared to Lutris, which is still pretty clunky. And I wouldn’t be able to filter to that, nor sort them by release date.


  • Just for gaming purposes, having a unified front end that:

    • lets you start an application with the arguments it needs, whether to use a specific Wine folder, or start an emulator with the right arguments

    • lets you tag up each application with some custom arguments - genre, date, and so on - and lets you filter and sort by them

    • lets you configure each app with their own box art or whatever as an icon

    • keeps some gaming-related metadata; hours played, whether you’ve finished it, …

    Essentially, Windows 3.1 Program Manager for the 21st century. Lutris did that quite well. Heroic doesn’t let you add custom stuff, it just integrates with store fronts. RetroArch has the old-school Linux problem of “all the functionality you need, plus all the functionality anyone might ever need, plus all the functionality that no-one needs, all arranged seemingly at random in dozens of menus”.

    Lutris scripts were great - just having the required winetricks commands to get something obscure working was awesome, but packaged up in a useful way along with art and metadata was handy. The front-end being “only what you need” was good as well. Shame it’s gone off the rails a bit…


  • addie@feddit.uktolinuxmemes@lemmy.world•uptime
    link
    fedilink
    arrow-up
    14
    ·
    3 months ago

    Yeah. I’ve got my home server set to install all security updates and restart Monday at 3 am; my first thought when seeing a two-month uptime on any of my machines is ‘whoops’, not ‘wow’.

    Amazing uptimes are strictly for machines that aren’t connected to a network, and I’d start to be concerned whether they’d restart on eg. power failure if I started seeing really big numbers.