Off-and-on trying out an account over at @[email protected] due to scraping bots bogging down lemmy.today to the point of near-unusability.

  • 19 Posts
  • 1.53K Comments
Joined 2 years ago
cake
Cake day: October 4th, 2023

help-circle

  • You mean just the brand, or the manufacturing?

    I mean, branding something is trivial.

    But if you want to manufacture it in Europe, then you have to compete against companies who are going to be manufacturing in China, and manufacturing wages are going to be lower in China, so it’s going to be at a price disadvantage.

    I was just commenting yesterday where some guy wanted to buy a keyboard out of the EU or Canada instead of a Unicomp keyboard because he was pissed at the US. He was asking about buying a Cherry keyboard. Cherry just shut down their production in Germany after cheaper Chinese competition clobbered 'em.

    If you want to have stuff manufactured in Europe, you’ve got kinda limited options.

    1. Get some kind of patriotic “buy European” thing going, where people are intrinsically willing to pay a premium for things made in Europe.

    2. Ban imports. My guess is that in general, Europe will not do this unless they have some negative externality, like national security, associated with the import (think, say, Russian natural gas), since it’s economically-inefficient.

    3. Leverage some kind of other comparative advantage. Like, okay. Maybe one can’t have competitive unskilled assembly line workers. But maybe if there’s really amazing, world-leading industrial automation, so that there’s virtually no human labor marginal cost involved, and one scales production way up, it’s possible to eliminate enough of the assembly line labor costs to be competitive.


  • Unless you have some really serious hardware, 24 billion parameters is probably the maximum that would be practical for self-hosting on a reasonable hobbyist set-up.

    Eh…I don’t know if you’d call it “really serious hardware”, but when I picked up my 128GB Framework Desktop, it was $2k (without storage), and that box is often described as being aimed at the hobbyist AI market. That’s pricier than most video cards, but an AMD Radeon RX 7900 XTX GPU was north of $1k, an NVidia RTX 4090 was about $2k, and it looks like the NVidia RTX 5090 is presently something over $3k (and rising) on EBay, well over MSRP. None of those GPUs are dedicated hardware aimed at doing AI compute, just high-end cards aimed at playing games that people have used to do AI stuff on.

    I think that the largest LLM I’ve run on the Framework Desktop was a 106 billion parameter GLM model at Q4_K_M quantization. It was certainly usable, and I wasn’t trying to squeeze as large a model as possible on the thing. I’m sure that one could run substantially-larger models.

    EDIT: Also, some of the newer LLMs are MoE-based, and for those, it’s not necessarily unreasonable to offload expert layers to main memory. If a particular expert isn’t being used, it doesn’t need to live in VRAM. That relaxes some of the hardware requirements, from needing a ton of VRAM to just needing a fair bit of VRAM plus a ton of main memory.


  • That’s why they have the “Copilot PC” hardware requirement, because they’re using an NPU on the local machine.

    searches

    https://learn.microsoft.com/en-us/windows/ai/npu-devices/

    Copilot+ PCs are a new class of Windows 11 hardware powered by a high-performance Neural Processing Unit (NPU) — a specialized computer chip for AI-intensive processes like real-time translations and image generation—that can perform more than 40 trillion operations per second (TOPS).

    It’s not…terribly beefy. Like, I have a Framework Desktop with an APU and 128GB of memory that schlorps down 120W or something, substantially outdoes what you’re going to do on a laptop. And that in turn is weaker computationally than something like the big Nvidia hardware going into datacenters.

    But it is doing local computation.


  • I’m kind of more-sympathetic to Microsoft than to some of the other companies involved.

    Microsoft is trying to leverage the Windows platform that they control to do local LLM use. I’m not at all sure that there’s actually enough memory out there to do that, or that it’s cost-effective to put a ton of memory and compute capacity in everyone’s home rather than time-sharing hardware in datacenters. Nor am I sold that laptops — which many “Copilot PCs” are — are a fantastic place to be doing a lot of heavyweight parallel compute.

    But…from a privacy standpoint, I kind of would like local LLMs to be at least available, even if they aren’t as affordable as cloud-based stuff. And at least Microsoft is at least supporting that route. A lot of companies are going to be oriented towards just doing AI stuff in the cloud.


  • You only need one piece of (timeless) advice regarding what to look for, really: if it looks too good to be true, it almost certainly is. Caveat emptor.

    I mean…normally, yes, but because the situation has been changing so radically in such a short period of time, it probably is possible to get some bonkers deals in various niches, because the market hasn’t stabilized yet.

    Like, a month and a half back, in early December, when prices had only been going up like crazy for a little while, I was posting some tiny retailers that still had RAM in stock at pre-price-increase rates that I could find on Google Shopping. IIRC the University of Virginia bookstore was one, as they didn’t check that purchasers were actually students. I warned that they’d probably be cleaned out as soon as scalpers got to them, and that if someone wanted memory, they should probably get it ASAP. Some days prior to that, there was a small PC parts store in Hawaii that had some (though that was out of stock by the next time I was looking and mentioned the bookstore).

    That’s not to disagree with the point that @[email protected] is making, that this was awfully sketchy as a source, or your point that scavenging components off even a non-scam piece of secondhand non-functional hardware is risky. But in times of rapid change, it’s not impossible to find deals. In fact, it’s various parties doing so that cause prices to stabilize — anyone selling memory for way below market price is going to have scalpers grab it.


  • I’m not really a hardware person, but purely in terms of logic gates, making a memory circuit isn’t going to be hard. I mean, a lot of chips contain internal memory. I’m sure that anyone that can fabricate a chip can fabricate someone’s memory design that contains some amount of memory.

    For PC use, there’s also going to be some interface hardware. Dunno how much sophistication is present there.

    I’m assuming that the catch is that it’s not trivial to go out and make something competitive with what the PC memory manufacturers are making in price, density, and speed. Like, I don’t think that if you want to get a microcontroller with 32 kB of onboard memory, that it’s going to be a problem. But that doesn’t really replace the kind of stuff that these guys are making.

    EDIT: The other big thing to keep in mind is that this is a short-term problem, even if it’s a big problem. I mean, the problem isn’t the supply of memory over the long term. The problem is the supply of memory over the next couple of years. You can’t just build a factory and hire a workforce and get production going the moment that someone decides that they want several times more memory than the world has been producing to date.

    So what’s interesting is really going to be solutions that can produce memory in the near term. Like, I have no doubt that given years of time, someone could set up a new memory manufacturer and facilities. But to get (scaled-up) production in a year, say? Fewer options there.





  • If I had to guess, part of the problem is probably “bigger” hardware moving into their space.

    Like, phones have a lot of limitations for playing “heavyweight”, PC-style games:

    • Small battery.

    • Small screen.

    • Limited ability to dissipate heat.

    • Really limited space and the hardware tradeoffs that come with that.

    • Touchscreen controls, even with accelerometer, aren’t ideal for a lot of games, especially PC or console ports.

    For a lot of those, if you can manage to lug a laptop with you, you’re probably better off.

    Then you have stuff like the Steam Deck and a bunch of similar larger-than-phone game-oriented platforms show up, and that eats even further into your market. Yeah, okay, a ROG Phone is smaller and lighter than a Steam Deck, but if you’re trying to deal with touchscreen controls by lugging along external control stuff, then you’re sacrificing some of that mobility:

    https://www.androidcentral.com/phones/asus-rog-phone-9-pro-is-the-best-gaming-phone-and-its-here-in-the-us

    I mean, I’m sure that there’s still a niche for heavyweight-game phone gaming, but it’s gonna have other parties eating away at the edges, narrowing it. You gotta want to play heavyweight games, not be willing to use larger-than-phone hardware, but spend a substantial amount of money on your phone (especially given the short EOL on the ROG phone) to have that ability. My guess is that some people who won’t use other hardware for gaming is because they have a phone and are price-sensitive enough to not want to get additional hardware platforms to just play games, so “users willing to spend a high premium on phone hardware to be able to game” may be a poor match to that market.





  • You could also just only use Macs.

    I actually don’t know what the current requirement is. Back in the day, Apple used to build some of the OS — like QuickDraw — into the ROMs, so unless you had a physical Mac, not just a purchased copy of MacOS, you couldn’t legally run MacOS, since the ROM contents were copyrighted, and doing so would require infringing on the ROM copyright. Apple obviously doesn’t care about this most of the time, but I imagine that if it becomes institutionalized at places that make real money, they might.

    But I don’t know if that’s still the case today. I’m vaguely recalling that there was some period where part of Apple’s EULA for MacOS prohibited running MacOS on non-Apple hardware, which would have been a different method of trying to tie it to the hardware.

    searches

    This is from 2019, and it sounds like at that point, Apple was leveraging the EULAs.

    https://discussions.apple.com/thread/250646417?sortBy=rank

    Posted on Sep 20, 2019 5:05 AM

    The widely held consensus is that it is only legal to run virtual copies of macOS on a genuine Apple made Apple Mac computer.

    There are numerous packages to do this but as above they all have to be done on a genuine Apple Mac.

    • VMware Fusion - this allows creating VMs that run as windows within a normal Mac environment. You can therefore have a virtual Mac running inside a Mac. This is useful to either run simultaneously different versions of macOS or to run a test environment inside your production environment. A lot of people are going to use this approach to run an older version of macOS which supports 32bit apps as macOS Catalina will not support old 32bit apps.
    • VMware ESXi aka vSphere - this is a different approach known as a ‘bare metal’ approach. With this you use a special VMware environment and then inside that create and run virtual machines. So on a Mac you could create one or more virtual Mac but these would run inside ESXi and not inside a Mac environment. It is more commonly used in enterprise situations and hence less applicable to Mac users.
    • Parallels Desktop - this works in the same way as VMware Fusion but is written by Parallels instead.
    • VirtualBox - this works in the same way as VMware Fusion and Parallels Desktop. Unlike those it is free of charge. Ostensible it is ‘owned’ by Oracle. It works but at least with regards to running virtual copies of macOS is still vastly inferior to VMware Fusion and Parallels Desktop. (You get what you pay for.)

    Last time I checked Apple’s terms you could do the following.

    • Run a virtualised copy of macOS on a genuine Apple made Mac for the purposes of doing software development
    • Run a virtualised copy of macOS on a genuine Apple made Mac for the purposes of testing
    • Run a virtualised copy of macOS on a genuine Apple made Mac for the purposes of being a server
    • Run a virtualised copy of macOS on a genuine Apple made Mac for personal non-commercial use

    No. Apple spells this out very clearly in the License Agreement for macOS. Must be installed on Apple branded hardware.

    They switched to ARM in 2020, so unless their legal position changed around ARM, I’d guess that they’re probably still relying on the EULA restrictions. That being said, EULAs have also been thrown out for various reasons, so…shrugs

    goes looking for the actual license text.

    Yeah, this is Tahoe’s EULA, the most-recent release:

    https://www.apple.com/legal/sla/docs/macOSTahoe.pdf

    Page 2 (of 895 pages):

    They allow only on Apple-branded hardware for individual purchases unless you buy from the Mac Store. For Mac Store purchases, they allow up to two virtual instances of MacOS to be executed on Apple-branded hardware that is also running the OS, and only under certain conditions (like for software development). And for volume purchase contracts, they say that the terms are whatever the purchaser negotiated. I’m assuming that there’s no chance that Apple is going to grant some “go use it as much as you want whenever you want to do CI tests or builds for open-source projects targeting MacOS” license.

    So for the general case, the EULA prohibits you from running MacOS wherever on non-Apple hardware.





  • Milsim games involve heavy ray tracing

    I guess it depends on what genre subset you’re thinking of.

    I play a lot of milsims — looks like I have over 100 games tagged “War” in my Steam library. Virtually none of those are graphically intensive. I assume that you’re thinking of recent infantry-oriented first-person-shooter stuff.

    I can only think of three that would remotely be graphically intensive in my library: ArmA III, DCS, and maybe IL-2 Sturmovik: Battle for Stalingrad.

    Rule the Waves 3 is a 2D Windows application.

    Fleet Command and the early Close Combat titles date to the '90s. Even the newer Close Combat titles are graphically-minimal.

    688(i) Hunter/Killer is from 1997.

    A number of of them are 2D hex-based wargames. I haven’t played any of Gary Grigsby’s stuff, but that guy is an icon, and all his stuff is 2D.

    If you go to Matrix Games, which sells a lot of more hardcore wargames, a substantial chunk of their inventory is pretty old, and a lot is 2D.



  • Yes. For a single change. Like having an editor with 2 minute save lag, pushing commit using program running on cassette tapes4 or playing chess over snail-mail. It’s 2026 for Pete’s sake, and we5 won’t tolerate this behavior!

    Now of course, in some Perfect World, GitHub could have a local runner with all the bells and whistles. Or maybe something that would allow me to quickly check for progress upon the push6 or even something like a “scratch commit”, i.e. a way that I could testbed different runs without polluting history of both Git and Action runs.

    For the love of all that is holy, don’t let GitHub Actions manage your logic. Keep your scripts under your own damn control and just make the Actions call them!

    I don’t use GitHub Actions and am not familiar with it, but if you’re using it for continuous integration or build stuff, I’d think that it’s probably a good idea to have that decoupled from GitHub anyway, unless you want to be unable to do development without an Internet connection and access to GitHub.

    I mean, I’d wager that someone out there has already built some kind of system to do this for git projects. If you need some kind of isolated, reproducible environment, maybe Podman or similar, and just have some framework to run it?

    like macOS builds that would be quite hard to get otherwise

    Does Rust not do cross-compilation?

    searches

    It looks like it can.

    https://rust-lang.github.io/rustup/cross-compilation.html

    I guess maybe MacOS CI might be a pain to do locally on a non-MacOS machine. You can’t just freely redistribute MacOS.

    goes looking

    Maybe this?

    https://www.darlinghq.org/

    Darling is a translation layer that lets you run macOS software on Linux

    That sounds a lot like Wine

    And it is! Wine lets you run Windows software on Linux, and Darling does the same for macOS software.

    As long as that’s sufficient, I’d think that you could maybe run MacOS CI in Darling in Podman? Podman can run on Linux, MacOS, Windows, and BSD, and if you can run Darling in Podman, I’d think that you’d be able to run MacOS stuff on whatever.


  • I’m all for running models locally, as long as one can handle the hardware cost of not sharing hardware with other users, for privacy reasons and so forth, but laptops aren’t a fantastic hardware platform for heavy parallel computation.

    • Limited ability to dissipate heat.

    • Many current laptops have a limited ability to be upgraded, especially on memory. Memory is currently a major limiting factor on model size, and right now, laptops are likely to be memory-constrained due to shortages and due to using soldered memory, most can’t be upgraded a couple years down the line when memory prices are lower.

    • Limited ability to use power on battery.

    In general, models have been getting larger. I think that it is very likely that for almost any area we can think of, we can get a better result by producing a larger model. There are tasks that don’t absolutely need a large model, but odds are that one could do better with a larger model.

    Another issue is that the hardware situation is rapidly changing, and it may be that there will be better hardware out that can erfoem significantly better before long.

    So unless you really, really need to run your computation on a laptop, I’d be inclined to run it on another box. I’ve commented on this before: I use a Framework Desktop to do generative AI stuff remotely from my laptop when I want to do so. I need very little bandwidth for the tasks I do, and anywhere I have a laptop and a cell link, it’s available. If I absolutely had to have a high-bandwidth link to it, or use it without Internet access, I’d haul the box along with me. Sure, it needs wall power (or at least a power station), but you aren’t going to be doing much heavy parallel computation on a laptop without plugging it into a wall anyway.

    Even with non-laptop hardware, unless you really, really want to do a bunch of parallel computation in the near future, especially since a lot of hardware costs have shot up, unless you are willing to pay the cost to do it now, you may be better off waiting until prices come down.

    EDIT: I’m also not at all convinced that a lot of the things that one thinks might need to be done on-laptop actually need to be done on-laptop. For example, let’s say that one likes Microsoft’s Recall feature of Copilot. I am pretty sure that someone could put together a bit of software to just do the image recognition and tagging on a home desktop when one plugs one’s laptop in at night to charge — log the screenshots at runtime, but then do the number crunching later. Maybe also do fancy compression then, bring the size down further. Yeah, okay, that way the search index doesn’t get updated until maybe the night, but we’ve had non-realtime updated file indexes for a long time, and they worked fine. I have my crontab on my Linux box update the locate database nightly to this day.

    EDIT2: Not to mention that if you have a parallel compute box on the network, it can be used by phones or whatever too. And you’ll probably get better results with the kind of image recognition with a much larger model that can run on a box like that.

    I mean, you want to always be solving a user problem. Do people want captioned screenshots of what they’ve been doing, to seach their usage history? Maybe. Do they need it immediately, and are they willing to make the associated cost, battery life, and caption-quality performance tradeoffs for that immediacy? I’m a lot more skeptical about that.

    EDIT3: And I do get that, if you want to provide remote access to a parallel compute box, self-hosting is hard today. But that still seems like a problem that Microsoft is in a prime position to work on. Make it plug-and-play to associate a parallel compute box with a laptop. Plug it in over USB-C like an eGPU. Have a service to set up a reverse proxy for the parallel compute box, or provide the option to use some other service. Hell, provide the option to do cloud compute on it.

    Steam does something like this with Steam Link for local network use, leveraging a “big” box for parallel compute so that small, portable devices can use it for games. Does Microsoft?

    searches

    Yeah.

    https://www.xbox.com/en-US/consoles/remote-play

    Play remotely from your Xbox console

    Play games installed on your console, including titles in the Xbox Game Pass library, on LG Smart TVs, Samsung Smart TVs, Amazon Fire TV devices, and Meta Quest headsets, as well as other browser supported devices like PCs, smart phones, and tablets.

    Yeah. They’re literally already selling parallel compute hardware that you put on your home network and then use on portable devices. I mean, c’mon, guys.