@wolfpld@mastodon.gamedev.place
@wolfpld@mastodon.gamedev.place avatar

wolfpld

@wolfpld@mastodon.gamedev.place

Author of Tracy Profiler, etcpak, and some other stuff.

This profile is from a federated server and may be incomplete. Browse more on the original instance.

castano, to random
@castano@mastodon.gamedev.place avatar

Is there a way not to burn quithub's LFS quota on github actions?
I have a repo with GBs of LFS data, and it looks like the checkout action downloads the entire thing every time it's triggered.
This is not only is extremely wasteful, but also gets expensive very quickly!

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@castano If "quithub" is not a typo, gitea is a direct self-hosted replacement. It supports LFS as well as actions.

https://about.gitea.com/

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano The cheapest you can go with GitHub is $5 per month for 50 GB of LFS storage and 50 GB of monthly transfer.

BuyVM will give you 1 TB of storage to use however you want for the same $5. The catch is that you also need a VPS from them, which is $15 for a dedicated CPU core and 4GB of RAM.

You can go cheaper with them, but then you get into CPU fair-sharing territory, and the low RAM amount doesn't play well with running actions.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano I would recommend it. There have been relatively few problems, support is quick to respond, and you can nag the owner on Discord. It's a small company, not a shitshow like OVH.

One downside is that the route I have from home to their EU site is not that great. It looks okay with trace route, but seems to be throttled on some hop in the middle.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano Actually... I'm looking at Hetzner's dedicated servers, and that might be a better option? Superior hardware that you don't have to share with anyone (even with a dedicated CPU core you still have other people (ab)using your RAM or IO bandwidth), and the price bump is very small, definitely in the same price range.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano Yes. The cheapest one are 35 eur, and they are 4 core 6700/7700 with 64 GB RAM + 500 GB SSD or 32 GB RAM + 1 TB SSD with an unlimited 1 Gbps link.

Right now I have a 2 core 8 GB BuyVM option ($30), and a 256 GB slab ($5) that is spinning rust accessed via network. For the network link, it's unlimited, guaranteed 200+ Mbps, with bursts up to 10 Gbps.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @castano The disk space is actually half that in a 2x RAID 1 configuration. Still very tempting.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @dotstdy An excerpt from BuyVM's terms of use:

3,1,1 - Clients must provide their legitimate name and surname and residential address when registering an account.
3,1,4 - Registration and Order Placement must take place from the client's residential ISP.
3,1,5 - Account details must match information provided by payment method.

I'd imagine Hetzner takes similar precautions.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @dotstdy In BuyVM they also manually verify your order, unless you pay in crypto (so no chargebacks) or are in good standing with them (6 months of active service).

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @dotstdy In my dealings with the Polish tax authorities, I was able to present English documents with my own handwritten translations of the important parts. The lady at the counter said something about notarization, but I assured her it would be fine, and it was.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen It went without a problem for me. Create an account, hook up a credit card, and that's it. No paperwork for verification or anything.

The server I got on an auction was up and running right away. They provide a TUI installation tool that does everything for you, provided you use one of the distros they support (https://docs.hetzner.com/robot/dedicated-server/operating-systems/standard-images/). The RAID thing is optional, so you can just use the two drives you get separately.

Right now I get a 60 MB/s download from https://www.borgbase.com/.

aras, to Playdate
@aras@mastodon.gamedev.place avatar

Because no one stopped me, I ported "Everybody Wants to Crank the World" demo to PC (Windows/Mac). https://github.com/aras-p/demo-pd-cranktheworld/pull/1 :playdate: :demoscene:

Using Sokol libraries by @floooh to do most of heavy lifting.

Fun fact: while the demo is running, it takes up as much CPU time as the windows task manager on my PC.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@aras @floooh I don't think the "less CPU usage than the task manager" claim still stands ;)

wolfpld, to random
@wolfpld@mastodon.gamedev.place avatar

Nvidia driver with external sync is in beta.

Seems to work as expected. No more black flicker in Resolve, Noita, or Stardew Valley. No previous frames during hitches in Star Citizen.

@wonziu

wolfpld, to random
@wolfpld@mastodon.gamedev.place avatar

Why is clang taking 5 minutes to compile a relatively small C++ (168 KB) source file? Let's see...

https://github.com/ggerganov/llama.cpp/blob/917dc8cfa67a72fb7c8bf7392270da3bf4833af4/unicode-data.cpp

Ah, oh, um... That's not how you do it.

Here's 10 MB of data as source code that compiles in about 8 seconds:

https://raw.githubusercontent.com/wolfpld/tracy/8983e14e1875ea1b7de820c558f898f3ad47015a/profiler/src/profiler/TracyMicroArchitecture.cpp

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@JamesWidman That's an interesting proposal, but not relevant to my case. The input I have is a 110 MB XML file (https://uops.info/xml.html) that I don't want to parse or include/download. Preprocessing the data makes accessing it convenient and fast.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@JamesWidman Not really. There is a lot of pointer following in the tables I have, and a postprocessing step would be necessary to set everything up. The compiler hand-waves all that away, and I can just access a global table and then follow into whatever it points to.

dotstdy, to random
@dotstdy@mastodon.social avatar

the phrase "blazingly fast" really upsets me

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy Plot twist: the thing is actually slow.

pervognsen, (edited ) to random
@pervognsen@mastodon.social avatar

This GH issue is pretty funny, but seems to have finally gotten the ball rolling on the Wayland side after the threat/worry that SDL 3.0 might not support Wayland natively (more specifically, it would not select SDL's Wayland backend by default) due to some issues that made it untenable for games. https://github.com/libsdl-org/SDL/pull/9345

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy @pervognsen It's actually quite "simple". Get the people interested in moving things forward, agree on a solution, and implement it in selected compositors and client applications.

Ignore the obstructionists, let their software be inferior. Hold them hostage, just as they are holding everyone else hostage right now.

(By "simple," I mean "very hard," because the people who actually do the work want a compromise, even if it means things remain in limbo for years).

pervognsen, (edited ) to random
@pervognsen@mastodon.social avatar

How much RAM do you have in your dev workstation/laptop?

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@dotstdy @pervognsen @foonathan There are multithreaded linkers.

rovarma, to random
@rovarma@mastodon.gamedev.place avatar

The filesystem APIs on Linux remind me of Vulkan in a way. There's all these little low-level bits and bobs that can be used to build anything, but there's not a convenience function in sight, so everybody ends up implementing the exact same things in slightly different ways.

Sometimes a guy just wants to move a file to a different location, ya know?

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @rovarma @molecularmusing Can you elaborate on that last sentence? The assumption seems a bit far-fetched to me.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @rovarma @molecularmusing Yeah, but it just reduces to: it's a library always available to be installed.

When I was using Gnome some time ago (when xwayland had broken DPI scaling on KDE), I avoided KDE applications, because there was always something wrong with them visually.

(Recently it turned out it might be https://gitlab.gnome.org/GNOME/adwaita-icon-theme/-/issues/288)

Some people may want to have a consistent look of their desktop UI. There are reasons why eg. Qt may not be installed on a system.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @rovarma @dotstdy @molecularmusing It amuses me to read about zsh being "new" or "modern". I have a screenshot (actual screenshot of a CRT, taken with a camera) of a kernel panic from 20 years ago, and it has the exact zsh prompt I still use today. Makes you think about how little innovation there is in unix shells.

wolfpld, to random
@wolfpld@mastodon.gamedev.place avatar

Gnome and window decorations, again.

https://factorio.com/blog/post/fff-408

forrestthewoods, to random
@forrestthewoods@mastodon.gamedev.place avatar

Proving that Immediate Mode GUIs aren’t significant battery hogs. Computers are really fast!

MacBook M1 Idle: 3.5 watts

Dear ImGui: 7.5
ImPlot: 8.9
EGUI: 8.2
Rerun: 11.1

Spotify: 5.8
VSCode: 7.0
YouTube: 11.5
Facebook: 8.7

Compiling: 50.0

Full blog post: https://www.forrestthewoods.com/blog/proving-immediate-mode-guis-are-performant/

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @theWarhelm @forrestthewoods For plots, it checks if the number of plot items to draw is less than an arbitrary number, then draw all, otherwise do random sampling.

https://github.com/wolfpld/tracy/blob/master/profiler/src/profiler/TracyTimelineItemPlot.cpp#L132-L235

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @theWarhelm @forrestthewoods I have thought about how to improve this, but have not come up with a satisfactory solution. You either have a ton of metadata and a hard time when you need to insert a new item in the middle of already existing ones, or you have to do some kind of partitioning scheme. But then you have to decide whether to do it by time or by number of items, and your basic problem does not go away anyway, it just happens some time later.

wolfpld,
@wolfpld@mastodon.gamedev.place avatar

@pervognsen @theWarhelm @forrestthewoods What you describe seems to be quite tricky to me ;) But I think I get the general gist of it.

The zones are not the problem though, they are fine as they are. You can run a debug build and it will go happily at 144 FPS, even if the screen is full or razor thin zones.

The real problem is with handling plot data, including CPU usage, which basically does a binary search for each screen column, and it's slow.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • JUstTest
  • khanakhh
  • kavyap
  • thenastyranch
  • everett
  • tacticalgear
  • rosin
  • Durango
  • DreamBathrooms
  • mdbf
  • magazineikmin
  • InstantRegret
  • Youngstown
  • slotface
  • megavids
  • ethstaker
  • ngwrru68w68
  • cisconetworking
  • modclub
  • tester
  • osvaldo12
  • cubers
  • GTA5RPClips
  • normalnudes
  • Leos
  • provamag3
  • anitta
  • lostlight
  • All magazines