A lot of phone modems ship with their own SoC (processor) running its own OS. It’s much smaller and slower than the main phone SoC but, depending on its implementation, it can have full access to all of your main processor’s memory through DMA.
I once met a person that never drank water, only soft drinks. It’s not the unhealthiness of this that disturbed me, but the fact they did it without the requisite paperwork.
Unlike those disorganised people I have a formal waiver. I primarily drink steam and crushed glaciers.
A lot of phone modems ship with their own SoC (processor) running its own OS. It’s much smaller and slower than the main phone SoC but, depending on its implementation, it can have full access to all of your main processor’s memory through DMA.
Replacing a TCP socket with a UNIX socket doesn’t affect the amount of headers you have to parse.
We rented our technology and could not read nor write.
I am not so sure that it will end up faster or better.
**In theory: **A CPU scheduler should give programs as much CPU time as they want until you start nearing CPU resource saturation. Discord doesn’t need very large amounts of CPU (admittedly it’s a lot more than it should for a text chap app, but it’s still not diabolically bad). It will only start getting starved when you are highly utilising all cores. That can happen on my 2-core laptop, but I don’t have any games on my 6 core desktop that will eat everything. Nonetheless on my laptop I’d probably prefer my games take the resources (not Discord) and I’d happily suffer any reasonable drop in responsiveness of Discord as a result.
I don’t think that a new process (a new dedicated browser-client) instead of a new thread (tab in existing browser) is intrinsically faster or better. CPU schedulers are varied and complex, I wouldn’t be surprised if any differences in performance measurements would end up down in the noise. If anything the extra memory usage might cause more IO contention and memory starvation, making everything slower rather than faster. But this is all conjecture, so don’t give it much credit.
Basically, it’s faster to focus on painting a single canvas than it is to painting 3 at the same time.
I don’t think that’s much of a problem in practice, at least for Firefox: one tab can crash and stop rendering completely (or lock up 100% of 1 CPU core) but the others will keep going in other threads. For the most part they shouldn’t be able to affect each other’s performance.
In practice: What’s the actual metric that you think will be better or worse? I assume responsiveness to typing and clicks in the discord UI?
I’ve never seen discord lag or stutter from causes other than IO limitations (startup speed, network traffic, heavy IO on my machine) or silly design (having to refresh the page after leaving it open all day, I suspect it’s intentionally auto-disabling but I’m not sure). That’s not something that running a separate discord client in a separate dedicated/embedded browser will fix.
https://halestrom.net/darksleep/blog/054_nvme/
Summary: two Silicon Power P34A80’s died within a few months of use, the second one was the warranty replacement of the first. In both cases sectors suddenly became permanently unreadable.
SFF = Small Form Factor. It’s smaller than traditional ATX computers but can still take the same RAM, processors and disks. Motherboards and power supplies tend to be nonstandard however. Idle power consumptions are usually very good.
USFF = Ultra Small Form Factor. Typically a laptop chipset + CPU in a small box with an external power supply. Somewhat comparable with SBCs like Raspberry Pis. Very good idle power consumption, but less powerful than SFF (and/or louder due to smaller cooler) and often don’t have space for standard disks.
SBC = Single Board Computer.
I wouldn’t attack via USB, that path has already been too well thought out. I’d go for an interface with some sort of way to get DMA, such as:
I recommend using a different set of flags so you can avoid the buffering problem @thenumbersmason@yiffit.net mentions.
This next example prevents all of your ram getting uselessly filled up during the wipe (which causes other programs to run slower whenever they need more mem, I notice my web browser lags as a result), allows the progress to actually be accurate (disk write speed instead of RAM write speed) and prevents the horrible hang at the end.
dd if=/dev/urandom of=/dev/somedisk status=progress oflag=sync bs=128M
“oflag” means output flag (to do with of=/dev/somedisk). “sync” means sync after every block. I’ve chosen 128M blocks as an arbitrary number, below a certain amount it gets slower (and potentially causes more write cycles on the individual flash cells) but 128MB should be massively more than that and perfectly safe. Bigger numbers will hog more ram to no advantage (and may return the problems we’re trying to avoid).
If it’s an SSD then I issue TRIM commands after this (“blkdiscard” command), this makes the drive look like zeroes without actually having to write the whole drive again with another dd command.
I’m very curious about the downvotes to this one. May I ask people’s thoughts? Perhaps I’m too vague? I can put a bigger story about my experiences with various init systems in production & research if people are interested.
https://github.com/maltejur/discord-screenaudio
A custom discord client that supports streaming with audio on Linux
Jaysus, I wish this were a world where stuff like that wasn’t necessary.
Uneducated question: what’s the benefit of a dedicated client over running it in a normal browser?
That absolutely sucks :| Thankyou for the detail.
The fact this issue is happening on both Pipewire and Pulseaudio also suggests it’s more likely a bug in the drivers… It might not be obvious on ALSA directly, but that doesn’t mean an issue doesn’t exist there…
I probably made the overlap unclear, sorry:
I do a lot of middleware development and we’re regularly blamed by users for bugs/problems upstream too (which is why we’ve now added a huge amount of enduser diagnostics/metrics in our products which has made it more obvious the issues aren’t related to us).
Eep, that’s annoying. You also probably don’t have direct interaction with the users most of the time (they’re not your customer) which makes this worse, people in a vacuum follow each other’s stories.
In practice, very few people have issues with Pulseaudio (I haven’t seen issues since launch). Sometimes as well, keep in mind it can be the sound interface (especially if its USB)
There might be a bias here because these problems are not persistent, ie a reboot fixes them.
In regards to setup, most distributions will handle that anyway I’m guessing. So not sure why the configuration process should matter unless you’re in Arch or Slackware? As long as the distribution handles it, it shouldn’t matter. It’d really a non-issue honestly.
That’s potentially more things different distros can do differently and more issues your middleware will start getting blamed for.
Yes it’s not a problem for user-friendly distros, but why does the user friendliness problem exist anywhere anyway? It’s better to fix problems upstream, not downstream.
If you check SystemD, its a HUGE step up, which is why everyone is using it now
I think that’s a “winners write history” situation. There were other options at the time that might have been better choices. Everyone uses it now because of Redhat and Debian being upstream to most users, desktop and corporate. I was not surprised by Redhat adopting it (it’s their own product) but Debian was quite the shock.
Yes systemd is definitely a step up from traditional initscripts (oh god). In terms of simplicity, reliability and ease of configuration however it’s a step below other options (like runit). I don’t have distro management experience but, given the problems I’ve encountered with different init systems over the years, I suspect there would be less of a maintenance burden with the other options.
I’ve been using PipeWire this year on my Void Linux laptop & desktop. It’s been mostly OK but has a few problems. For years I have been using plain ALSA (with no custom configuration) because pulseaudio causes me regular issues across multiple machines (mostly silently failing).
Pros:
Cons:
Can you describe the issue? I don’t use Discord (and I presume the problem might depend on what browser you use).
N.B. to anyone reading this: ask your isp to “opt out of CG-NAT”. Talking about IPv6 may confuse the staffer you’re talking to, it’s partially related but not the fully picture.
Probably Windows update running in the background. On laptops it’s a particularly garbage experience (fan spins up & runs hot as you say) with no communication until it’s “done”. If you have deigned not to turn on Windows for a while (tisk tisk) then it might require multiple reboots and a forced fullscreen blue questioning about why you’re not using OneDrive and sharing more information (OOBE).
Are they still doing the MoDeRn standby thing where windows update runs when your laptop is “in standby” in your bag?
My approach to handling Windows Update is to use my imagination. You’re in an alternative dimension where a medieval super-powerful church-state controls technology. Windows update is a regular procedure required to obtain the necessary computing purity and state that has been deemed appropriate for your status. Those who choose to ford their own lazy path without it risk requiring the penance of reinstallation, or even worse, revocation. An occasional skip of your sessions is tolerated, but if you no longer habitually open your laptop for a few hours each morning then you will develop the symptoms.
Exactly this. Second hand thinkpads are stupidly cheap – I’m currently typing on my $180AUD laptop. I never buy new.
Especially handy when your university has contracts with Microsoft so you aren’t supposed to use competitive software
What…
Well it’s a good thing that Microsoft has embedded linux + its userspace in windows via WSL 2. That means using Linux + its userspace in Alpine is completely Koscher as long as you rename the root Alpine project to be “OceaneAlpine”, right?
*mooshrooms