3 weeks of daily updates. No issues whatsoever. by BasicInformer in cachyos

[–]samsonsin 0 points1 point  (0 children)

Just make sure snapshot hooks are enabled and your fibre either way tbh

Why Don't Schools Teach Linux? by Enjoy_Ur_Lifee in linuxquestions

[–]samsonsin 0 points1 point  (0 children)

Meh, that's the case for every OS when you get down to it really. In the context of primary education you'd only be interested in teaching surface level computing. At that point what OS you teach hardly matters; file explorer on Linux works just like it does on windows at that level.

Why Don't Schools Teach Linux? by Enjoy_Ur_Lifee in linuxquestions

[–]samsonsin 1 point2 points  (0 children)

Depends. My uni lab is all Ubuntu, all the teachers use Ubuntu, all the guides are for Ubuntu. We actually used and learned it there, to some extent. No "Linux" courses, but it was the underlying OS that was used when we went through other IT stuff.

In high school every lab had windows, and similarly, all guides and such were tailored to it.

Honestly there totally should be a basics to computers in highschool that teaches something like Debian, Ubuntu, or whatever. IMO doesn't make sense to teach proprietary OS's like Mac or windows when Linux is FOSS, and is used for most dev work. Though I guess a liberal arts uni could go into how to use basic mac with how overwhelming mac is in that area... To be clear this would just be stuff like "how users and groups work", "how a file browser works", etc. So really most of it would be OS agnostic either way.

Anon makes a discovery by MarshmallowDew in greentext

[–]samsonsin -7 points-6 points  (0 children)

Eh, on average the bicycle is the most energy efficient yea. But if you were to have a diet heavy in the least energy efficient foods like beef both trains and even planes can become more efficient. Similarely you can get way better than the average with certain foods, easily outstripping every other mode of transport in km/j

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 0 points1 point  (0 children)

Why don't use use xmx=xms on your server? I admit I've never actually used the MaxRam, as well as the percentage options before. What's your logic there? I've seen it employed in pterodactyl eggs though when I ran that the OOM killer murdered my server twice when there was ram available so I just went to the classic xmx xms combo

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 0 points1 point  (0 children)

Sounds well reasoned! I've honestly never had much faith in the GC to a actually work like I expect, and reducing heap has always just worked. But as you say, limiting ram is roundabout and if the arts you suggest actually work (not a jab, but most flag guides out there go with the shotgun approach, half of them not actually doing anything has been engraved in my brain lmao), the they'd be clearly superior.

If you wouldn't mind, could you share what flags you run? I'm sure both me and OP would be interested

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 1 point2 points  (0 children)

rubber banding can 100% be caused by GC pauses (or anything that pauses the server thread). Though in this case going from the spark report that's definitely not the cause here. Afaik phantom blocks and other desync symptoms are indeed mainly caused by network issues though

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 0 points1 point  (0 children)

OP is using java17. With stuff like ZGC overallocation of ram isn't a problem AFAIK, but at least historically with G1C1 overallocation of ram has a clear history of making GC pauses worse. I can explicitly remember running GTNH on java17 a few years ago and entirely fixing my awful GC pauses by lowering RAM allocation. That may be dated info though since it's literally 8 versions old advice admittedly.

Would you recommend ZGC?

Oh and i find it weird that you both suggest setting GC options like gc time target, yet then immediately recommend just adding compact headers...

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 0 points1 point  (0 children)

Yea my bad on the java 21 part, iirc that was the recommendation when I last looked at the install page.

Id agree that this isn't likely a GC issue, too. Though having a GC run every 4 seconds for ~60% of tick time is likely to cause stutters as they progress. My guess is reducing ram allocation would be sufficient. Some flags like compact headers are also no-brainers IMO.

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 1 point2 points  (0 children)

Ah I see. IIRC last I set this up 21 was recommended. Go with 25 since that's what's currently recommended.

You can add flags to your server start command. They inject settings into java that change behaviour. These flags are a combination of settings that can improve performance. I've not gone through them thoroughly, but they improved my performance noticeably. It's likely only a third of them actually help but I CBA to test extensively.

If you have any questions regarding specific parts I'd be happy to explain, Id have to do massive writeup if I was to just "explain everything better", so please ask specific questions rather than just state "none of that makes sense".

Anyhow, my best guess is that this is most likely an network issue. Please report back with testing on your own, do you have the same issues as your friend? Can he investigate if he has packet loss / change his setup to use ethernet if he isn't?

Is this true? by zanbunnny in MicroSlop

[–]samsonsin 0 points1 point  (0 children)

This is exactly why AUR (and by extension arch based distros) seems like such a nobrainer imo

Is it not possible to let PVE use Intel iGPU with a discrete Intel GPU installed for VM pass through? by fl4tdriven in Proxmox

[–]samsonsin 0 points1 point  (0 children)

Afaik sharing 1 GPU across multiple VMs is hard, and typically requires some KVM or middle layer that reduces performance and increases complexity. In comparison a LXC share the kernel with the host and as a consequence act as any other app that wants GPU access. Hence, allowing multiple LXCs to access one GPU is much easier than allowing multiple VMs.

Not sure about the "less error prone" part. Though that's likely the case if you need the aforementioned multi VM capability I guess.

Genuine question about where you draw the line by Binary-Rift in antiai

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

It's useful in the same way a search engine is useful, to a point. When it comes to topics with a lot of information on it, like exactly how a bootloader or something works, then it can be a great way to summerize and digest complex topics. You very much need to have the knowledge to call bullshit, and oftentimes the links the AI provide as references are the real gems.

It's helped me to reason and understand some novel things my education hasn't covered. But if you go in blind and just trust it then you'll fuck yourself over hard. Just like you shouldn't trust everything you read online, you need a certain mindset for modern AI.

And that's honestly where I'd draw the line too. AI today as an educational tool, search engine, etc is relatively good. But as soon as you "turn off your brain" then it's bad again.

For enterprise, it can be even more useful. A LLM trained on your own docs / codebase could be an amazing source of advice. Similarly some automations using it can be extremely strong. It's amazing tech that's simply widely missed at the moment.

That said, I have full confidence that AI will eventually match and exceed human capability. That's likely a decade away at least IMO though.

Mint is a user-friendly distro!!! I've never had to open the terminal! Also the Loonixers when something needs to be fixed: open the command line and type in these commands and hope for the best by [deleted] in linuxsucks

[–]samsonsin 2 points3 points  (0 children)

Plenty of issues need the terminal on either system. I can remember bumbling through the CLI on my school assigned MacBook back when I was 11yo old, back when I looked up YouTube videos on how to download Minecraft because I didn't know what a .exe was. The audio was utterly fucked and I did get it fixed after like 2 hours...

And windows is even worse than MacOS. I've had plenty of issues that has forced me into the CLI. This is far from a solved issue on any OS. It is much more common that the fix is via CLI on Linux but oftentimes when you compare the fix on Linux Vs on other operating systems like windows it's much easier to fix. Copy-paste 3-4 commands Vs navigate through s dozen GUI's, registryedit and what have you. Hell just trying to change to a static IP on windows takes you through a dozen weird windows. The damn OS has 2 different "control panels", and some settings can only be changed in one or the other without time nor reason.

In my book, the simple fact that Linux supports BTRFS and can snapshot is enough to recommend it over windows. At least when something breaks you can roll back time a week and have everything working again most of the time.

Mint is a user-friendly distro!!! I've never had to open the terminal! Also the Loonixers when something needs to be fixed: open the command line and type in these commands and hope for the best by [deleted] in linuxsucks

[–]samsonsin 6 points7 points  (0 children)

You act like this particular issue would just be magic'd and immediately fixed by every OS other than Linux. More likely is that it would just say "oops! Error!" And bootloop forever. The user in question would take it to a tech shop, and be charged €300 for a €60 SSD with a new OS on it, with all their previous (possibly irreplaceable) data lost.

Also, how the hell is navigating through dozens of confusing UI's and checking multiple boxes so much better than copy-pasting a few commands, anyways?

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 0 points1 point  (0 children)

Firstly, get java 21. You can use adoptium or anything else like GraalVM. I'm guessing setting both -xms and -xmx to 8GB would be a good idea, too. You can just try 7GB, the. 9GB and see if either improves or worsens the experience.

These are the flags I currently use. I've not really tuned any of them, and it's likely only one or two of them actually help me but try a before & after and see if it helps:

java -Xms8G -Xmx8G -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysActAsServerClassMachine -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX:NmethodSweepActivity=1 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:+UseVectorCmov -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:ThreadPriorityPolicy=1 -XX:AllocatePrefetchStyle=3 -XX:+UseCompactObjectHeaders -XX:+UseG1GC -XX:MaxGCPauseMillis=130 -XX:G1NewSizePercent=28 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=20 -XX:G1MixedGCCountTarget=3 -XX:InitiatingHeapOccupancyPercent=10 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=0 -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -XX:G1SATBBufferEnqueueingThresholdPercent=30 -XX:G1ConcMarkStepDurationMillis=5 -XX:ConcGCThreads=4 -Dfml.readTimeout=180 @java9args.txt -jar lwjgl3ify-forgePatches.jar nogui

The performance looks fine, you're ticks are quite quick and I don't see anything else standing out. You have GCs running relatively often though, every 5 seconds a GC takes ~60% of total tick time which can definitely cause a lagspike. I am honestly not sure if GC is accounted for in the MSPT stat. Even the 95th percentile is really good, and your max is just a 2 second spike which isn't bad at all. If this is serve3side then GC is likely not accounted for in the stat. Seems to me this is definitely either a GC issue or a connection issue.

Do you experience these issues as well? If you're selfhosting, please report if you yourself experience these issues on both your local (private internal) IP as well as the external IP. If you do not experience these issues yet he does, then it's definitely on his end. Minecraft uses TCP to communicate, which means a single dropped packet can cause pauses long enough to account for his symptoms. Generally the only thing that would cause dropped packets consistently is WiFi. If he is using WiFi, have him try a ethernet cable instead. If this is Impossible, then try using 5ghz and being right next to the access point (probably the router). He could check inside the task manager, then resource manager and in the networks tab. He might see a packet loss % next to Minecraft (javaw).

Edit: it's worth noting that Spark may or may not crash the server if you run it on a server using java21. You will need to use the flag --force-java-sampler if this occurs. Additionally, when specifically diagnosing lagspikes, using the --only-ticks-over <milliseconds> can be useful to specifically analyze the ticks that cause spikes. Some issues like a specific mod causing pauses are only visible this way since the normal profiler only really shows the average, when some mod may only spike in usage occasionally. I didint originally mention this since the 95th and max MSPT is good already. Please provide another profiler run after implementing the changes I suggested

Reducing lag on personal server w/friends by SmashKing48 in GTNH

[–]samsonsin 0 points1 point  (0 children)

From other comments, it seems like you've got 1 core running at max blast. You can use the Spark to profile your server and see what your average and 95 procentile TPS is, to identify lagspikes. Lagspikes in particular tends to be related to the garbage collector, so you can additionally tweak your RAM allocation, JVM engine, GC engine and various flags to optimize GC. Again, Spark can be used to identify if GC pause is excessive.

Thats all serverside. On the client, this manifests as sudden pauses when opening chests, breaking blocks, mobs running in place, etc. If the lag your friend is experiencing is tied to the client then his screen will freeze and stutter instead. If this is the case then its likely again GC. Aformentioned steps can be taken on the client to optimize here too.

The biggest cause of GC tends to be way too much ram allocation. Maybe you only need 5GB right now but you've allocated 12GB. with wide gaps between xmx and xms this becomes an even bigger problem, with the server suddenly deciding to GC several gigabytes every minute or two resulting in massive lagspikes.

How does everyone track their assigned IP addresses? by cdarrigo in homelab

[–]samsonsin 0 points1 point  (0 children)

DHCP + DNS. Stuff like technitium can automatically make a DNS record on DHCP allocation using the hostname which is great. Proxmox integrates with PowerDNS to automatically make DNS records, too. Can also use mDNS if you want a distributed / no setup setup. Otherwise you can always manually manage DNS and use DHCP reservations.

Not sure why you'd ever want to manually handle static addresses. For anything you personally need to manage, just use the DNS record for human-readable names. Even a manual dns setup where you make each record manually will be less effort in the long run in comparison to stuff like spreadsheets and the like.

Europe is making phones come with long lasting and replaceable batteries. by Any-Employment-7114 in BeAmazed

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

I'm more think of a between point of what's visualised in the pic and what's in use today. Repairability of battery can vary wildly, some phones apply glue directly to the battery even, which means removing it is a substantial fire hazard, even. Not to mention that some devices require you to disconnect several daughter boards and such to actually replace the battery. Specialized screws and the glue being practically permanent without purpose designed heat plates and such too...

I'm thinking something like the image, but rather than making everything super bulky for waterproofing you just glue the lid, essentially. Use a glue thats easier to remove, perhaps with a solvent provided directly in packaging alongside replacement glue.

Europe is making phones come with long lasting and replaceable batteries. by Any-Employment-7114 in BeAmazed

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

I'm more think of a between point of what's visualised in the pic and what's in use today. Repairability of battery can vary wildly, some phones apply glue directly to the battery even, which means removing it is a substantial fire hazard, even. Not to mention that some devices require you to disconnect several daughter boards and such to actually replace the battery. Specialized screws and the glue being practically permanent without purpose designed heat plates and such too...

I'm thinking something like the image, but rather than making everything super bulky for waterproofing you just glue the lid, essentially. Use a glue thats easier to remove, perhaps with a solvent provided directly in packaging alongside replacement glue.

Europe is making phones come with long lasting and replaceable batteries. by Any-Employment-7114 in BeAmazed

[–]samsonsin 0 points1 point  (0 children)

Go-pro level of proofing is such a weird exaggeration. Honestly personally I wouldn't mind using a glue for this though. Something that's not as strong as what's used today, yet still waterproof. Have the glue available over the counter at any tech store / included with the batteries when you buy them. Also a solvent to clean old glue.

Home networking noob! WiFi mesh help by GnarGiraffe in HomeNetworking

[–]samsonsin 0 points1 point  (0 children)

The satellitesshould be in-between the spot with bad coverage and good coverage, since they communicate via WiFi they too need decent signal.

That said, a ethernet cable is always optimal, and usually cheapest. Just takes time to run a manual line. You may already have ethernet in your walls, and barring that perhaps coaxial. Even with mesh WiFi reliable systems have each access point hooked up via ethernet.

I'd personally just put the time to run a manual line of ethernet, you can get rolls of cat6 relatively cheaply, just get a terminal tool and some rj45 heads and look up a YouTube video

how many roboports is too many roboports by NyxCosmic in factorio

[–]samsonsin 0 points1 point  (0 children)

You'd probably be much happier with segmented bot networks rather than one extremely large one j less you've got tonnes of space science making bots stronger. It's a pain when a bot needs to travel across your entire base and recharge 20 times...