<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>OpenCL on darktable 5.6 user manual</title>
    <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/</link>
    <description>Recent content in OpenCL on darktable 5.6 user manual</description>
    <generator>Hugo</generator>
    <language>uk</language>
    <atom:link href="https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Загальна інформація</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/background/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/background/</guid>
      <description>&lt;p&gt;Обробка зображень із високою роздільною здатністю &amp;ndash; це складне завдання, яке вимагає сучасного комп’ютера. Що стосується як пам’яті, так і потужності центрального процесора, отримання найкращих результатів із типового 15, 20 або 25-мегапіксельного зображення може швидко довести ваш комп’ютер до межі можливостей.&lt;/p&gt;&#xA;&lt;p&gt;Вимоги Darktable не є винятком. Всі розрахунки виконуються на 4 х 32-бітних числах із рухомою комою. Це повільніше, ніж “звичайна” 8 або 16-бітна ціла алгебра, але усуває всі проблеми з тональними розривами або втратою інформації.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Як працює OpenCL</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/how-opencl-works/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/how-opencl-works/</guid>
      <description>&lt;p&gt;Як ви можете собі уявити, апаратна архітектура графічних процесорів може суттєво відрізнятися. Існують різні виробники, і навіть різні покоління графічних процесорів від одного виробника можуть бути не порівнянними. У той же час виробники графічних процесорів зазвичай не розголошують всіх подробиць про апаратну частину своєї продукції для громадськості. Одним із наслідків цього є необхідність використовувати пропрієтарні драйвери під Linux, якщо ви хочете повною мірою скористатися своєю графічною картою.&lt;/p&gt;&#xA;&lt;p&gt;На щастя, галузевий консорціум, очолюваний The Khronos Group, розробив відкритий стандартизований інтерфейс під назвою OpenCL, що дозволяє використовувати графічний процесор як пристрій цифрової обробки. OpenCL пропонує подібну до C99 мову програмування з сильним акцентом на паралельних обчисленнях. Програмі, яка хоче використовувати OpenCL, знадобиться джерельний код OpenCL, який вона передає апаратно-специфічному компілятору під час виконання. Таким чином програми можуть використовувати OpenCL на різних архітектурах графічних процесорів (навіть одночасно). Усі апаратні &amp;ldquo;секрети&amp;rdquo; приховані в цьому компіляторі і, як правило, не видимі користувачеві (або програмі). Скомпільований код OpenCL завантажується у ваш графічний процесор і &amp;ndash; за певних викликів API &amp;ndash; він готовий виконати для вас обчислення.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Активація OpenCL у Darktable</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/activate-opencl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/activate-opencl/</guid>
      <description>&lt;p&gt;Використання OpenCL у Darktable вимагає, щоб ваш ПК був оснащений відповідною графічною картою та містив необхідні бібліотеки. Більшість сучасних відеокарт від NVIDIA, Intel або AMD мають повну підтримку OpenCL. Зазвичай компілятор OpenCL постачається як частина пропрієтарного графічного драйвера і використовується як динамічна бібліотека під назвою &lt;code&gt;libOpenCL.so&lt;/code&gt;. Ця бібліотека повинна знаходитися в папці, де її може знайти динамічний лінкер системи.&lt;/p&gt;&#xA;&lt;p&gt;Коли Darktable запускається, він спершу спробує знайти та завантажити &lt;code&gt;libOpenCL.so&lt;/code&gt;, а в разі успіху перевірить, чи доступна відеокарта підтримується OpenCL. Щоб скористатися перевагами графічного процесора, для Darktable має бути доступна мінімально достатня кількість графічної пам’яті (від 1 ГБ). Якщо ця перевірка пройде, Darktable спробує налаштувати своє середовище OpenCL: контекст обробки потрібно ініціалізувати, конвеєр обчислення запустити, файли джерельного коду OpenCL (розширення &lt;code&gt;.cl&lt;/code&gt;) потрібно прочитати та скомпілювати, а також включені процедури (ядра OpenCL) потрібно підготувати для модулів Darktable. Якщо все це успішно завершується, підготовка завершена.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Налаштування OpenCL</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/setting-up/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/setting-up/</guid>
      <description>&lt;p&gt;Величезна різноманітність систем та помітні відмінності між постачальниками OpenCL та версіями драйверів унеможливлює повний огляд того, як налаштувати OpenCL. Ми можемо навести лише приклад, у цьому випадку для драйвера NVIDIA версії 542.29.06 на Fedora 39. Ми сподіваємось, що це послужить базовим введенням і допоможе вам вирішити будь-які проблеми, що стосуються вашого налаштування.&lt;/p&gt;&#xA;&lt;p&gt;Принцип потоку функцій OpenCL такий:&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;Darktable &amp;gt; libOpenCL.so &amp;gt; libnvidia-opencl.so.1 &amp;gt; модуль/модулі драйвера ядра &amp;gt; GPU&lt;/code&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;Darktable динамічно завантажує &lt;code&gt;libOpenCL.so&lt;/code&gt; &amp;ndash; системну бібліотеку, яка повинна бути доступна для динамічного завантажувача системи (&lt;code&gt;ld.so&lt;/code&gt;).&lt;/p&gt;</description>
    </item>
    <item>
      <title>Можливі проблеми та рішення</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/problems-solutions/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/problems-solutions/</guid>
      <description>&lt;p&gt;Darktable автоматично виявляє помилки часу виконання OpenCL. Виявивши помилку, Darktable переробить все на центральному процесорі. Хоча це буде сповільнювати обробку, це не повинно впливати на кінцевий результат.&lt;/p&gt;&#xA;&lt;p&gt;Можуть бути різні причини того, чому OpenCL може зазнати невдачі на етапі ініціалізації. OpenCL залежить від вимог до обладнання та від наявності певних драйверів та бібліотек. На додаток, все це повинно відповідати виробнику, моделі та номеру редакції. Якщо щось не підходить (наприклад, ваш графічний драйвер &amp;ndash; завантажений як модуль ядра &amp;ndash; не відповідає версії вашого &lt;code&gt;libOpenCL.so&lt;/code&gt;), підтримка OpenCL, швидше за все, буде недоступна.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Профіль планування</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/scheduling-profile/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/scheduling-profile/</guid>
      <description>&lt;p&gt;Darktable може використовувати центральний процесор і один або кілька графічних процесорів, що підтримують OpenCL. Залежно від відносної продуктивності цих пристроїв, користувачі можуть вибирати серед певних профілів планування для оптимізації продуктивності. Це досягається встановленням параметра конфігурації &lt;a href=&#34;https://docs.darktable.org/usermanual/5.6/uk/preferences-settings/processing/#opencl&#34;&gt;Налаштування &amp;gt; Обробка &amp;gt; OpenCL &amp;gt; Профіль планування OpenCL&lt;/a&gt;, який пропонує наступний вибір:&lt;/p&gt;&#xA;&lt;dl&gt;&#xA;&lt;dt&gt;за замовчуванням&lt;/dt&gt;&#xA;&lt;dd&gt;Якщо виявлено графічний процесор, що підтримує OpenCL, Darktable використовує його для обробки зображення в центральній панелі, поки &lt;a href=&#34;https://docs.darktable.org/usermanual/5.6/uk/module-reference/utility-modules/darkroom/navigation/&#34;&gt;вікно навігації&lt;/a&gt; обробляється на центральному процесорі паралельно. Це найкраще налаштування для систем з досить швидким центральним процесором та помірно швидким графічним процесором. Точний розподіл пристроїв до різних типів конвеєрів можна уточнити за допомогою параметра конфігурації “opencl_device_priority” (див. &lt;a href=&#34;https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/multiple-devices/&#34;&gt;кілька пристроїв&lt;/a&gt;).&lt;/dd&gt;&#xA;&lt;dt&gt;дуже швидкий GPU&lt;/dt&gt;&#xA;&lt;dd&gt;За допомогою цього профілю планування Darktable послідовно обробляє центральну панель і вікно попереднього перегляду на графічному процесорі. Це кращий параметр для систем з графічним процесором, який значно перевершує центральний процесор.&lt;/dd&gt;&#xA;&lt;dt&gt;Кілька GPU&lt;/dt&gt;&#xA;&lt;dd&gt;Цей параметр стосується систем із декількома графічними процесорами, відносна продуктивність яких суттєво &lt;strong&gt;не&lt;/strong&gt; відрізняється. Щоразу, коли запускається робота з обробки, Darktable використовує будь-який графічний процесор, що не працює в цей час, але не центральний процесор. Користувачам систем із різноманітними графічними процесорами потрібно буде краще контролювати їх відносний пріоритет. Їм було б краще вибрати профіль “за замовчуванням” і тонко налаштувати свою систему за допомогою параметра конфігурації “opencl_device_priority” (див. &lt;a href=&#34;https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/multiple-devices/&#34;&gt;кілька пристроїв&lt;/a&gt;).&lt;/dd&gt;&#xA;&lt;/dl&gt;&#xA;&lt;p&gt;Під час першого запуску або після будь-якої виявленої зміни конфігурації графічного процесора вашої системи Darktable намагається визначити найбільш підходящий для вас профіль. Ви можете змінити його в будь-який час у &lt;a href=&#34;https://docs.darktable.org/usermanual/5.6/uk/preferences-settings/processing/#opencl&#34;&gt;Налаштування &amp;gt; Обробка &amp;gt; OpenCL&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Кілька пристроїв</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/multiple-devices/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/multiple-devices/</guid>
      <description>&lt;p&gt;Планування роботи пристроїв OpenCL можна оптимізувати в більшості систем, використовуючи налаштування “Профіль планування OpenCL”. Однак, якщо ваша система оснащена декількома графічними процесорами, можливо, ви захочете встановити відносний пріоритет пристроїв вручну. Для цього вам потрібно вибрати профіль планування “за замовчуванням” та змінити вподобання в параметрі конфігурації “opencl_device_priority”.&lt;/p&gt;&#xA;&lt;p&gt;Важливо розуміти, як Darktable використовує пристрої OpenCL. Кожна послідовність обробки зображення &amp;ndash; для перетворення вхідних даних у кінцевий вихід за допомогою стека історії &amp;ndash; виконується в конвеєрі. Існує п&amp;rsquo;ять різних типів конвеєрів у Darktable. Один тип відповідає за обробку зображення в центральній панелі (або повного перегляду) в режимі темної кімнати, інший обробляє зображення попереднього перегляду (вікно навігації, також необхідне для гістограм та інших внутрішніх речей, які стосуються правильного виведення повного перегляду). Для показу другого вікна темної кімнати знадобиться ще один конвеєр попереднього перегляду. Кожен із цих трьох конвеєрів може працювати в будь-який час, і конвеєри повного та попереднього перегляду можуть працювати паралельно. Крім того, може бути кілька паралельних конвеєрів, що виконують експорт файлів, а також кілька паралельних конвеєрів, що генерують мініатюри. Якщо пристрій OpenCL доступний, Darktable динамічно розподіляє його для одного конкретного конвеєра для одного запуску і звільняє після цього.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenCL все ще не працює в мене</title>
      <link>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/still-doesnt-work/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/5.6/uk/special-topics/opencl/still-doesnt-work/</guid>
      <description>&lt;p&gt;Як вже згадувалося, системи OpenCL мають величезну різноманітність установок: різні виробники та моделі графічних процесорів, різний обсяг пам&amp;rsquo;яті графічного процесора, різні драйвери, різні дистрибутиви тощо&amp;hellip;&lt;/p&gt;&#xA;&lt;p&gt;Багато потенційних проблем виникають лише за дуже конкретних комбінацій цих факторів. Оскільки розробники Darktable мають доступ лише до невеликої частини цих варіацій, будь ласка, знайте, що ми, можливо, не зможемо вирішити вашу конкретну проблему. Ми мало що можемо зробити, якщо ми не можемо відтворити вашу проблему.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
