@tristanC@functional.cafe avatar

tristanC

@tristanC@functional.cafe

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

bgamari, (edited ) to linux
@bgamari@mastodon.social avatar

I find it rather surprising simply playing a song on a contemporary desktop (e.g. Rhythmbox via via ALSA) increases baseline power consumption by nearly a Watt (on an AMD Framework 13), with rhythmbox, pipewire, and pipewire-pulse all waking up a 60 Hz using a combined 22 ms/s of CPU time.

While I'm only vaguely familiar with the Pipewire, it feels like it should be possible to do better for such a common task.

tristanC,
@tristanC@functional.cafe avatar

@bgamari It seems like by default pipewire streams are using very small buffer, with pw-top you can check what is the exchange rate. Perhaps it is possible to increase the size to reduce the load with PIPEWIRE_LATENCY?

How are you measuring the power consumption?

tristanC,
@tristanC@functional.cafe avatar

@bgamari I observe the same locally with the sof-hda-dsp driver (2048 for the device, 3600 for firefox). It looks likes this could be set through /usr/share/wireplumber/wireplumber.conf.d/alsa-vm.conf, which mention api.alsa.headroom = 2048.

I am sorry this is not very helpful, I guess we are missing a powersaving profile for pipewire.

tristanC,
@tristanC@functional.cafe avatar

@bgamari I asked about this on the matrix channel, and 2048 is the default value for clock.max-quantum, probably chosen as a point after which latency starts to be more noticeable.

The pipewire-pulse does cause an overhead, but I wonder what was the cost of pure pulseaudio versus ALSA or OSS, do you remember measuring the power consumption back then?

tristanC,
@tristanC@functional.cafe avatar

@bgamari By the way, I implemented a pw-play demo with my Haskell bindings to the libpipewire, and so far, the client seems to only take a couple of ms/s of CPU time :) https://github.com/TristanCacqueray/pipewire.hs/blob/main/pipewire/examples/PwPlay.hs

tristanC, to haskell
@tristanC@functional.cafe avatar
tristanC, to haskell
@tristanC@functional.cafe avatar
deech, to random
@deech@mastodon.social avatar

YouTube unboxing videos and “first impressions” programming language blog posts: same energy

tristanC,
@tristanC@functional.cafe avatar

@deech I really enjoyed your talks on ATS, Nim and SmallTalk. Are you planning to give a new one soon :)

tristanC, to random
@tristanC@functional.cafe avatar

I made some Haskell bindings for the libpipewire: https://discourse.haskell.org/t/bindings-to-pipewire-multimedia-framework/9630

tristanC, to random
@tristanC@functional.cafe avatar

Always Together featuring the Mandala Flowers by @range_marten https://youtu.be/S5US5KZ9R-g

tristanC, to random
@tristanC@functional.cafe avatar

The Secret of Monkey Island opening theme visualized with the Extruded Grid shader by @Shane: https://youtu.be/FBj8QWykvjg

range_marten, to random
@range_marten@dotnet.social avatar

Always a nice surprise to have your shader selected as shader of the week:

tristanC,
@tristanC@functional.cafe avatar

@range_marten Well done, it's lovely!

elmiko, to python
@elmiko@fosstodon.org avatar

you know hacking kubernetes manifests is so much more comfortable in python... is there any drive to get a yaml processor into the python standard lib?

tristanC,
@tristanC@functional.cafe avatar

@elmiko Why not using JSON at that point?

tristanC, to random
@tristanC@functional.cafe avatar

I wrote a new blog post about Live Reloading Haskell GUI: https://tristancacqueray.github.io/blog/live-reloading-haskell-gui-from-scratch

tristanC, to random
@tristanC@functional.cafe avatar

Color Of The Summer Sky featuring the Mandala Flowers by @range_marten
https://youtu.be/wOJNzi5nn-Q

tristanC, to random
@tristanC@functional.cafe avatar

I made my first contribution to freedesktop's pipewire: https://gitlab.freedesktop.org/pipewire/pipewire/-/merge_requests/1998

kosmikus, to haskell
@kosmikus@functional.cafe avatar

The one-year anniversary episode of the is starting in about 15 minutes!

https://www.youtube.com/watch?v=QTgRKWGDVr0&list=PLD8gywOEY4HaG5VSrKVnHxCptlJv2GAn7&index=24

tristanC,
@tristanC@functional.cafe avatar

@kosmikus Thank you and Edsko, you made folds look oh so easy!

tristanC, to random
@tristanC@functional.cafe avatar

I added a multiplayer REPL thingy to ButlerOS that lets you evaluate the content of a text editor on every keystroke, similar to KodeLife: https://github.com/ButlerOS/haskell-butler/pull/56

tristanC, to random
@tristanC@functional.cafe avatar

http://ariis.it/static/articles/venzone/page.html is a free adventure game written in Haskell, the game-play is simple, yet challenging in a good way. It's great, you should give it a try :)

tristanC, to random
@tristanC@functional.cafe avatar

I think I improved my mixing skills with reaper, here are a couple of new demos I made with a friend this week end: https://www.youtube.com/playlist?list=PLOA1Lq_GM0VtxqAsQJzxr8SsgdiUXOvY2

deech, to random
@deech@mastodon.social avatar

In broad strokes this pretty much matches my experience with Haskell and web services. Never again.

https://loglog.games/blog/leaving-rust-gamedev/

tristanC,
@tristanC@functional.cafe avatar

@deech genuinely curious, what would you use to write a new web service?

tristanC, to random
@tristanC@functional.cafe avatar

I wrote a blog post for featuring new demos I hope you’ll enjoy!

https://tristancacqueray.github.io/blog/using-dhall-to-animate-fractal

tristanC, to random
@tristanC@functional.cafe avatar

I uploaded a new demo featuring the Glowing Petals shader by @lsdlive https://www.youtube.com/watch?v=ZTYozTBCQQU

tristanC, to random
@tristanC@functional.cafe avatar

Introducing a new release of 11 mesmerizing classical pieces, the prettiest demos I have ever made! I hope you'll enjoy :)

https://www.youtube.com/playlist?list=PLOA1Lq_GM0VvsnCyvoBjul7rYEBAAkN_s

tristanC, to random
@tristanC@functional.cafe avatar

now supports pitch modulation from midi events, thus I'm writing a new shader to make use of all these new parameters!

tristanC,
@tristanC@functional.cafe avatar

Here is the result, using 10 pitch modulations to control apollian parameters: https://youtu.be/xkV-kinsgY8

tristanC,
@tristanC@functional.cafe avatar

Here is another one of the famous nocturne: https://youtu.be/mI1RoiLmwRQ

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