<?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 user manual</title>
    <link>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/</link>
    <description>Recent content in OpenCL on darktable user manual</description>
    <generator>Hugo</generator>
    <language>lo</language>
    <atom:link href="https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>ການເປີດໃຊ້ OpenCL ໃນ darktable</title>
      <link>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/activate-opencl/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/activate-opencl/</guid>
      <description>&lt;p&gt;ການໃຊ້ OpenCL ໃນ darktable ແມ່ນຕ້ອງການໃຫ້ຄອມພິວເຕີຂອງທ່ານຕິດຕັ້ງກາດຈໍທີ່ເໝາະສົມ ແລະ ມີໄລບຣາຣີທີ່ຈໍາເປັນຄົບຖ້ວນ. ກາດຈໍທີ່ທັນສະໄໝສ່ວນໃຫຍ່ຈາກ NVIDIA, Intel ຫຼື AMD ແມ່ນມາພ້ອມກັບການສະໜັບສະໜູນ OpenCL ຢ່າງເຕັມທີ່. ປົກກະຕິແລ້ວ ຕົວແປງຄຳສັ່ງ (compiler) ຂອງ OpenCL ຈະຖືກສົ່ງມານຳເປັນສ່ວນໜຶ່ງຂອງໄດເວີກາດຈໍທີ່ເປັນກຳມະສິດ ແລະ ຖືກໃຊ້ເປັນໄລບຣາຣີໄດນາມິກທີ່ຊື່ວ່າ &lt;code&gt;libOpenCL.so&lt;/code&gt;. ໄລບຣາຣີນີ້ຕ້ອງຢູ່ໃນໂຟນເດີທີ່ໄດນາມິກລິ້ງເກີ (dynamic linker) ຂອງລະບົບທ່ານສາມາດຊອກຫາໄດ້.&lt;/p&gt;&#xA;&lt;p&gt;ເມື່ອ darktable ເລີ່ມຕົ້ນ, ມັນຈະພະຍາຍາມຊອກຫາ ແລະ ໂຫຼດ &lt;code&gt;libOpenCL.so&lt;/code&gt; ກ່ອນ ແລະ &amp;ndash; ຖ້າສຳເລັດ &amp;ndash; ມັນຈະກວດສອບວ່າກາດຈໍທີ່ມີຢູ່ນັ້ນຮອງຮັບ OpenCL ຫຼືບໍ່. darktable ຕ້ອງການໜ່ວຍຄວາມຈຳກາດຈໍ (GPU) ຢ່າງໜ້ອຍ (1GB+) ເພື່ອໃຫ້ໄດ້ປະໂຫຍດຈາກ GPU. ຖ້າການກວດສອບນັ້ນຜ່ານ, darktable ຈະພະຍາຍາມຕັ້ງຄ່າສະພາບແວດລ້ອມ OpenCL ຂອງມັນ: ຕ້ອງມີການເລີ່ມຕົ້ນສະພາບການປະມວນຜົນ, ເລີ່ມທໍ່ການຄຳນວນ, ໄຟລ໌ລະຫັດຕົ້ນສະບັບ OpenCL (ນາມສະກຸນ &lt;code&gt;.cl&lt;/code&gt;) ຕ້ອງໄດ້ຮັບການອ່ານ ແລະ ແປງຄຳສັ່ງ, ແລະ ກິດຈະວັດຕ່າງໆທີ່ລວມຢູ່ນັ້ນ (OpenCL kernels) ຕ້ອງໄດ້ຮັບການຈັດຕຽມສຳລັບໂມດູນຂອງ darktable. ຖ້າຂັ້ນຕອນທັງໝົດເຫຼົ່ານີ້ສຳເລັດ, ການຈັດຕຽມກໍຖືວ່າສຳເລັດ.&lt;/p&gt;</description>
    </item>
    <item>
      <title>ການຕັ້ງຄ່າ OpenCL</title>
      <link>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/setting-up/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/development/lo/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;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;code&gt;libOpenCL.so&lt;/code&gt; ຈະອ່ານໄຟລ໌ຂໍ້ມູນສະເພາະຂອງຜູ້ຜະລິດ (&lt;code&gt;/etc/OpenCL/vendors/nvidia.icd&lt;/code&gt;) ເພື່ອຊອກຫາໄລບຣາຣີທີ່ປະກອບດ້ວຍການປະຕິບັດ OpenCL ສະເພາະຂອງຜູ້ຜະລິດ.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;ການປະຕິບັດ OpenCL ສະເພາະຂອງຜູ້ຜະລິດມາໃນຮູບແບບໄລບຣາຣີ &lt;code&gt;libnvidia-opencl.so.1&lt;/code&gt; (ເຊິ່ງໃນກໍລະນີຂອງພວກເຮົາແມ່ນລິ້ງສັນຍະລັກ (symbolic link) ທີ່ຊີ້ໄປຫາ &lt;code&gt;libnvidia-opencl.so.545.29.06&lt;/code&gt;).&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;code&gt;libnvidia-opencl.so.1&lt;/code&gt; ຈໍາເປັນຕ້ອງສື່ສານກັບໂມດູນເຄີເນິລສະເພາະຂອງຜູ້ຜະລິດ &lt;code&gt;nvidia&lt;/code&gt; ແລະ &lt;code&gt;nvidia_uvm&lt;/code&gt; ຜ່ານໄຟລ໌ອຸປະກອນພິເສດ &lt;code&gt;/dev/nvidia0&lt;/code&gt;, &lt;code&gt;/dev/nvidiactl&lt;/code&gt;, ແລະ &lt;code&gt;/dev/nvidia-uvm&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;ໃນການເລີ່ມຕົ້ນລະບົບ, ໄຟລ໌ອຸປະກອນພິເສດທີ່ຕ້ອງການ (&lt;code&gt;/dev/nvidia*&lt;/code&gt;) ຈະຕ້ອງຖືກສ້າງຂຶ້ນ. ຖ້າສິ່ງນີ້ບໍ່ເກີດຂຶ້ນໃນລະບົບຂອງທ່ານໂດຍເລີ່ມຕົ້ນ, ວິທີທີ່ງ່າຍທີ່ສຸດໃນການຕັ້ງຄ່າພວກມັນ ແລະ ໝັ້ນໃຈວ່າໂມດູນທັງໝົດຖືກໂຫຼດແລ້ວ ຄືການຕິດຕັ້ງແພັກເກດ &lt;code&gt;nvidia-modprobe&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>ບັນຫາທີ່ອາດຈະເກີດຂຶ້ນ ແລະ ວິທີແກ້ໄຂ</title>
      <link>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/problems-solutions/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/problems-solutions/</guid>
      <description>&lt;p&gt;darktable ຈະກວດພົບຂໍ້ຜິດພາດໃນຂະນະທີ່ລັນ OpenCL ໂດຍອັດຕະໂນມັດ. ເມື່ອກວດພົບຂໍ້ຜິດພາດ, ມັນຈະກັບໄປປະມວນຜົນທຸກຢ່າງໃນ CPU ໃໝ່. ເຖິງແມ່ນວ່າສິ່ງນີ້ຈະເຮັດໃຫ້ການປະມວນຜົນຊ້າລົງ ແຕ່ມັນບໍ່ຄວນສົ່ງຜົນກະທົບຕໍ່ຜົນລັບສຸດທ້າຍ.&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;&#xA;&lt;p&gt;ໃນກໍລະນີນັ້ນ, ສິ່ງທີ່ດີທີ່ສຸດທີ່ຄວນເຮັດຄືເລີ່ມ darktable ຈາກຄອນໂຊລດ້ວຍຄຳສັ່ງ &lt;code&gt;darktable -d opencl&lt;/code&gt;.&lt;/p&gt;&#xA;&lt;p&gt;ສິ່ງນີ້ຈະໃຫ້ຂໍ້ມູນການແກ້ໄຂຂໍ້ຜິດພາດ (debugging) ເພີ່ມເຕີມກ່ຽວກັບການເລີ່ມຕົ້ນ ແລະ ການໃຊ້ OpenCL. ກ່ອນອື່ນ, ຖ້າທ່ານພົບແຖວທີ່ເລີ່ມຕົ້ນດ້ວຍ &lt;code&gt;[opencl_init] FINALLY ...&lt;/code&gt; ນັ້ນຈະບອກທ່ານວ່າທ່ານສາມາດໃຊ້ OpenCL ໄດ້ຫຼືບໍ່. ຖ້າການເລີ່ມຕົ້ນລົ້ມເຫຼວ, ໃຫ້ເບິ່ງຂໍ້ຄວາມຂ້າງເທິງສຳລັບສິ່ງທີ່ຂຽນປະມານວ່າ &lt;code&gt;could not be detected&lt;/code&gt; (ກວດບໍ່ພົບ) ຫຼື &lt;code&gt;could not be created&lt;/code&gt; (ສ້າງບໍ່ໄດ້). ກວດເບິ່ງວ່າມີຂໍ້ແນະນຳວ່າຜິດພາດຢູ່ບ່ອນໃດ.&lt;/p&gt;</description>
    </item>
    <item>
      <title>ຫຼາຍອຸປະກອນ</title>
      <link>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/multiple-devices/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/multiple-devices/</guid>
      <description>&lt;p&gt;The scheduling of OpenCL devices can be optimized on most systems using the “OpenCL scheduling profile” settings. However, if your system is equipped with more than one GPU, you might want to set the relative device priority manually. To do this you need to select the “default” scheduling profile and change the settings in the “opencl_device_priority” configuration parameter.&lt;/p&gt;&#xA;&lt;p&gt;ມັນສຳຄັນທີ່ຕ້ອງເຂົ້າໃຈວ່າ darktable ໃຊ້ອຸປະກອນ OpenCL ແນວໃດ. ແຕ່ລະລຳດັບການປະມວນຜົນຂອງຮູບພາບ &amp;ndash; ເພື່ອແປງຂາເຂົ້າເປັນຜົນລັບສຸດທ້າຍໂດຍການໃຊ້ລາຍການປະຫວັດ &amp;ndash; ແມ່ນຖືກລັນໃນທໍ່ປະມວນຜົນພິກເຊລ (pixelpipe). ມີທໍ່ປະມວນຜົນພິກເຊລຫ້າປະເພດທີ່ແຕກຕ່າງກັນໃນ darktable. ປະເພດໜຶ່ງມີໜ້າທີ່ປະມວນຜົນມຸມມອງຮູບພາບກາງ (ຫຼື ມຸມມອງເຕັມ) ໃນໂໝດຫ້ອງມືດ, ອີກທໍ່ໜຶ່ງປະມວນຜົນຮູບພາບຕົວຢ່າງ (ໜ້າຕ່າງນຳທາງ, ເຊິ່ງຈຳເປັນສຳລັບຮີສໂຕແກຣມ ແລະ ສິ່ງອື່ນໆພາຍໃນທີ່ກ່ຽວຂ້ອງກັບການສະແດງຜົນທີ່ຖືກຕ້ອງຂອງມຸມມອງເຕັມ). ອີກທໍ່ປະມວນຜົນຕົວຢ່າງໜຶ່ງຈະຈຳເປັນສຳລັບການສະແດງໜ້າຕ່າງຫ້ອງມືດທີສອງ. ສາມາດມີແຕ່ລະອັນໃນສາມທໍ່ປະມວນຜົນນີ້ລັນໃນເວລາໃດກໍໄດ້, ໂດຍທີ່ທໍ່ປະມວນຜົນເຕັມ ແລະ ຕົວຢ່າງລັນໄປພ້ອມໆກັນ. ນອກຈາກນັ້ນ ຍັງສາມາດມີຫຼາຍທໍ່ປະມວນຜົນທີ່ລັນຂະໜານກັນເພື່ອສົ່ງອອກໄຟລ໌ ລວມທັງຫຼາຍທໍ່ປະມວນຜົນທີ່ສ້າງຮູບຍໍ້ (thumbnails). ຖ້າມີອຸປະກອນ OpenCL ຢູ່, darktable ຈະກຳນົດມັນໃຫ້ກັບທໍ່ປະມວນຜົນໃດໜຶ່ງໂດຍສະເພາະສຳລັບການລັນໜຶ່ງຄັ້ງ ແລະ ຈະປ່ອຍມັນຫຼັງຈາກນັ້ນ.&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenCL ຍັງບໍ່ທັນເຮັດວຽກສຳລັບຂ້ອຍ</title>
      <link>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/still-doesnt-work/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://docs.darktable.org/usermanual/development/lo/special-topics/opencl/still-doesnt-work/</guid>
      <description>&lt;p&gt;ດັ່ງທີ່ໄດ້ກ່າວມາແລ້ວ, ລະບົບ OpenCL ມາກັບການຕັ້ງຄ່າທີ່ຫຼາກຫຼາຍຫຼາຍ: ຜູ້ຜະລິດ ແລະ ລຸ້ນ GPU ທີ່ຕ່າງກັນ, ປະລິມານໜ່ວຍຄວາມຈຳ GPU ທີ່ຕ່າງກັນ, ໄດເວີທີ່ຕ່າງກັນ, ດິສທຣິບິວຊັນ (distributions) ທີ່ຕ່າງກັນ ແລະ ອື່ນໆ.&lt;/p&gt;&#xA;&lt;p&gt;ບັນຫາຫຼາຍຢ່າງທີ່ອາດຈະເກີດຂຶ້ນຈະປະກົດໃຫ້ເຫັນກໍຕໍ່ເມື່ອມີການລວມຕົວຂອງປັດໄຈເຫຼົ່ານີ້ທີ່ສະເພາະເຈາະຈົງຫຼາຍ. ເນື່ອງຈາກຜູ້ພັດທະນາ darktable ເຂົ້າເຖິງໄດ້ພຽງແຕ່ບາງສ່ວນນ້ອຍໆຂອງຄວາມຫຼາກຫຼາຍເຫຼົ່ານີ້, ກະລຸນາເຂົ້າໃຈວ່າພວກເຮົາອາດຈະບໍ່ສາມາດແກ້ໄຂບັນຫາສະເພາະຂອງທ່ານໄດ້. ມັນບໍ່ມີຫຍັງຫຼາຍທີ່ພວກເຮົາສາມາດເຮັດໄດ້ ຖ້າພວກເຮົາບໍ່ສາມາດຈຳລອງບັນຫາຂອງທ່ານໃຫ້ເກີດຂຶ້ນໄດ້.&lt;/p&gt;&#xA;&lt;p&gt;ຖ້າທ່ານກຳລັງມີບັນຫາກັບອຸປະກອນສະເພາະໃດໜຶ່ງ (ແລະ ທ່ານມີອຸປະກອນ OpenCL ອື່ນໆທີ່ມີຢູ່) ສິ່ງທຳອິດທີ່ຄວນເຮັດຄືລອງປິດການໃຊ້ງານສະເພາະອຸປະກອນນັ້ນ &amp;ndash; ເບິ່ງ &lt;a href=&#34;https://docs.darktable.org/usermanual/development/lo/special-topics/mem-performance/#device-specific-opencl-configuration&#34;&gt;ການປັບແຕ່ງໜ່ວຍຄວາມຈຳ ແລະ ປະສິດທິພາບ&lt;/a&gt; ສຳລັບຂໍ້ມູນເພີ່ມເຕີມ.&lt;/p&gt;&#xA;&lt;p&gt;ຖ້າບໍ່ມີວິທີອື່ນຊ່ວຍໄດ້, ທາງເລືອກທີ່ດີທີ່ສຸດອາດຈະແມ່ນການເລີ່ມ darktable ດ້ວຍຄຳສັ່ງ&lt;/p&gt;&#xA;&lt;p&gt;&lt;code&gt;darktable --disable-opencl&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;ໃນທີ່ສຸດແລ້ວ ບໍ່ມີຫຍັງໃນ darktable ທີ່ລັນໄດ້ແຕ່ໃນ GPU ເທົ່ານັ້ນ. ຢ່າໃຫ້ການຂາດ OpenCL ເຮັດໃຫ້ທ່ານທໍ້ໃຈ &amp;ndash; ລະຫັດ CPU ຂອງ darktable ກໍຖືກປັບແຕ່ງໃຫ້ມີປະສິດທິພາບສູງເຊັ່ນກັນ!&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
