home.social

#rayon — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #rayon, aggregated by home.social.

fetched live
  1. EVRTCK: тайловый дельта-кодек для удалённого рабочего стола — как мы убили H.264 для UI-контента

    Я Артур Валиев, разработчик EVRT Когда мы форкнули RustDesk и начали строить EvertyDesk — корпоративный удалённый рабочий стол с поддержкой Hyper-V, Proxmox, VirtualBox и умным агентом — первое, во что упёрлись, было видео. H.264 — стандарт де-факто. TeamViewer, AnyDesk, Windows App — все используют H.264. Он работает. Но он lossy. И вот здесь начинается проблема, о которой в статьях про remote desktop обычно не говорят. Когда оператор смотрит на терминал с git diff или читает трейс в VSCode — один размытый пиксель в букве это уже другой символ. H.264 при любом разумном битрейте вносит артефакты в области с резким контрастом. Точно туда, где у нас весь текст. Это неприемлемо. H.264 в lossless режиме ( QP=0 , lossless profile) существует, но поддержка в декодерах — через пень-колоду, а для mostly-static контента предикторы рассчитанные под видео с движением дают нулевой выигрыш над тривиальным delta-кодером. Нам не нужен motion estimation. Нам нужно: вот предыдущий кадр, вот текущий, вот список изменившихся тайлов, сожми только их. Мы написали EVRTCK.

    habr.com/ru/articles/1059238/

    #rust #remote_desktop #кодек #lossless #rayon #zstd #delta_encoding #видеокодек #EvertyDesk #производительность

  2. @shapr @meejah Not sure if I understand the need, but maybe #rayon crate?

  3. I miss having good contention profiling tools just already there with pprof. Running a cpu profiler on a #rayon #rust program pretty consistently only shows me activity from the one task I already expect to be cpu-heavy, and not what I need to know about the other tasks that block on mutexes and db queries.

  4. That's it for the benchmarking! You can find my implementation at github.com/anisse/lbzip2-rs/ ; it's very much PoC-quality code, so use at our own risks! I chose to manually spawn threads instead of using rayon or an async runtime; there are other things I'm not proud of, like busy-waiting instead of condvar for example. 14/N

    #lbzip2 #bzip2 #RustLang #async #rayon

  5. 𝐃𝐢𝐬𝐜𝐨𝐯𝐞𝐫 𝐭𝐡𝐞 𝐃𝐢𝐟𝐟𝐞𝐫𝐞𝐧𝐜𝐞𝐬: 𝐖𝐨𝐨𝐥 𝐯/𝐬 𝐑𝐚𝐲𝐨𝐧 𝐅𝐚𝐛𝐫𝐢𝐜 𝐆𝐮𝐢𝐝𝐞

    Explore the comprehensive guide on wool and rayon fabrics, delving into their origins, production processes, and unique characteristics.

    articles.wifd.in/fabric-guide-

    Regards,
    Fashion Articles by Waves Fashion Institute
    articles.wifd.in

    #fabricguide #wool #rayon #textiles #fashion #fabriccomparison #naturalfibers #syntheticfibers #sustainablefashion #materialscience

  6. Параллельный A на Rust и Rayon: ищем путь для воробушка*

    Привет, Хабр! Сегодня у нас задачка из мира природы: представьте, что маленький воробушек потерялся в городе. Ему нужно срочно найти путь домой, а дороги кишат кошками, людьми и прочими препятствиями. Разумеется, вручную искать маршрут — не вариант. Нам нужен алгоритм, а лучше параллельный, чтобы воробушек не ждал вечность. Какой алгоритм взять? Конечно же A *. Он и кратчайший путь найдёт, и с умом его построит. Но в одиночку он справляется медленно. Поэтому подключаем Rayon — библиотеку для многопоточных вычислений в Rust.

    habr.com/ru/companies/otus/art

    #rust #Rayon #многопоточные_вычисления

  7. I also switched over to #rayon to handle the thread pool from my own simple implementation.

    Provides a small yet noticeable performance improvement for all tools, especially system time when running fewer threads.

    #rust #rustlang

  8. omg, how do I properly profile a #rust programme that uses #rayon?

    Rayon is *fantastic* for data parallelization, but when I try to use `perf(1)` in Linux, and open the results with (e.g.) `hotspot(1)` it's all just totally full of a million calls to `rayon::…`. 😭 Is there a way to collapse them all down?

    #profiling #FastCodePls #perf #performance

  9. wow, the #Rust flamegraphs look pretty deep when you use #rayon. Is there anyway to make them easier to use?

    #RustProfiling

  10. A new version 1.8.1 of #eza was released with a nice performance improvement, thanks to #rayon a data-parallelism library for #rust github.com/rayon-rs/rayon

    `eza` is a replacement for the traditional `ls` command github.com/eza-community/eza/r

    /cc @cafkafk @gierens
    #RustLang #command_line

  11. Released wasm-bindgen-rayon 1.2.0 with much simplified workflow. github.com/RReverser/wasm-bind

    You no longer need to mess around with a custom Worker, Comlink and whatnot, and instead can use #Rayon iterators with #Wasm directly on the main thread (it will use spinning to work around the `atomics.wait` limitation). #rustlang