Skip to content

Commit

Permalink
Reference: Encode with BOM
Browse files Browse the repository at this point in the history
  • Loading branch information
SunSerega committed Oct 23, 2023
1 parent 325d4bc commit bcbc35f
Show file tree
Hide file tree
Showing 34 changed files with 34 additions and 34 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Сам модуль `OpenCLABC` - обёртка модуля `OpenCL`. Это значит, что внутри он использует
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




В списке устройств контекста могут быть только совместимые друг с другом устройства.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Обычно устройства получают статическим методом `Device.GetAllFor`:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Типы-простые_обёртки памяти OpenCL (`cl_mem`) рассмотрены в
Expand Down
2 changes: 1 addition & 1 deletion Packing/Reference/CL ABC/2#KernelArg/.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Методы, запускающие `Kernel` принимают специальные аргументы типа `KernelArg`, которые передаются в OpenCL-C код.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




OpenCL это неуправляемая библиотека. Обычно можно заставить управляеммые типы данных работать с ней.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Всё преимущество GPU над CPU состоит в выполнении одинаковой программы на рое из процессорных ядер.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Некоторые данные, передаваемые в программы на GPU, могут быть общими (для всех ядер) или просто не однотипными.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Но кроме выделения памяти на GPU - OpenCL так же позволяет выделять память внутри другой области памяти.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




OpenCL используется для передачи комманд в GPU.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Константы в любом контексте позволяют проводить особые оптимизации.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Иногда между командами для GPU надо вставить выполнение обычного кода на CPU.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Если сложить две очереди A и B (`var C := A+B`) — получится очередь C, в которой сначала выполнится A, а затем B.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




~~В данный момент всё ещё не работает... Но уже совсем скоро, правда-правда!~~
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Большинство деревьев выполнения очередей можно реализовать используя только сложение и умножение очередей. Но есть несколько проблем:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Для начала немного о распространении ошибок в очередях:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Передавать команды по одной, когда их несколько - ужасно не эффективно!\
Expand Down
2 changes: 1 addition & 1 deletion Packing/Reference/CL ABC/3#Оптимизация/.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




В данной справке в нескольких местах можно встретить утверждения вроде
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Кроме самого выполнения очередей - им так же необходима инициализация и финализация.
Expand Down
2 changes: 1 addition & 1 deletion Packing/Reference/Common.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




<div class="page-base" id="page-select">
Expand Down
2 changes: 1 addition & 1 deletion Packing/Reference/GL ABC/.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




`TODO` модуль `OpenGLABC` пока что не существует. Когда то он появится, но пока что есть только это сообщение.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Лучше прочитайте [оффициальный документ от microsoft](https://docs.microsoft.com/en-us/dotnet/standard/managed-code), если хотите точной и подробной информации.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Большинство функций из н.у. модулей требует какой-либо чистки. В основном потому что
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@


# В кратце:

- Н.у. модули представляют весь возможный функционал из своих соответствующих .dll;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




В исходных библиотеках обращение ко всем объектам идёт по "именам" (их так же можно назвать дескрипторами или id этих объектов).
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Многие параметры подпрограмм в исходных библиотеках принимают перечисления (enum'ы).
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Все подпрограммы исходных библиотек можно разделить на подпрограммы ядра + множество мелких расширений.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Библиотека `OpenGL.dll` имеет несколько функций, принимающих
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Большинство проблем при использовании неуправляемых .dll вытекают из следующих 2 различий:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Кроме удаления неиспользуемых экземпляров классов, сборщик мусора так же может произвольно
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




В .Net `var`-параметры реализованы через указатели. То есть эти 2 кода:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




В .Net массивы хранят не только содержимое, но и данные о своём размере.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Как и массивы - неуправляемые строки это указатель на первый символ строки.\
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@




Делегат - это адрес подпрограммы:
Expand Down

0 comments on commit bcbc35f

Please sign in to comment.