Logical Units of Execution and Storage
In this paper, we define a task as a sequence
of instructions that operate together as a group
corresponding to some logical part of a program. A
task, that is implemented in a procedural
ЖАРАТЫЛЫС ҒЫЛЫМДАРЫ
148
programming language, has well defined inputs and
outputs and it has to be executed on a PU on
purpose to do some modification on its output data.
When a task is submitted for execution, a discrete
index space is also defined by the caller. For each
point of this index space, an in-stance of the task is
executed, which is called work-item (WI). WIs are
only distinguished from each other by their own
index space positions.
Bundling WIs in a sub-space of the index
space, work-groups(WG) force a coarser grained
decomposition of the index space. WIs are executed
by single PEs maybe as part of a WG running on a
PA. Each WI operates according to the same task
but the actual sequence of instructions can be
different across the set of WIs. WIs with in a WG are
executed concurrently and may interact through
local memory objects and WG barriers implemented
by the PA [3]. The number of WGs can be usually
higher than the number of PAs for a specific device
as well as the number of WIs is usually not limited
by the number of PEs in a PA.
Memory objects (MO) store linear collection of
bytes in a memory space. Variables, arrays,
textures, or data structures can also be considered
as MOs. MOs are randomly addressable using
pointers or maybe real valued positions by the target
WIs. In contrast, MOs are usually not directly
accessible by the source WI, which can manipulate
them only by API calls. Task instances of a job
running on a compute cluster, instances of a
process executed on an SMP thread, and instances
of a kernel that are executed on a GPU
Problem Space Mapping and Virtualization
Using the elements of the execution model,
parallel and distributed tasks can be designed that is
executed on an abstract multi-level hardware
architecture. Nevertheless, re implementing a
parallel algorithm originally designed for the shared
memory architecture of a single GPU, on a
distributed memory architecture is usually not a
trivial “porting issue”. In general, it can be performed
easily only for the simplest classes of problems –
when the parallel task in-stances (e.g. kernel
executions for the GPU) work on different data
without any communication. Even so, suitable
guidelines can be defined for the more general
problem domain defined that enables detaching the
memory and address space management from the
algorithmic code. Any computational problem has a
common, well defined purpose, inputs and outputs
in case of any implementations, which may differ in
the details of the applied variant of the algorithm.
Thus, it is a reasonable expectation for a
computational system to provide an interface that
represents an abstract solution for a certain
computational problem with specified inputs and
outputs.
Any computational problem has a common,
well defined purpose, inputs and outputs in case of
any implementations, which may differ in the details
of the applied variant of the algorithm. Thus, it is a
reasonable expectation for a computational system
to provide an interface that represents an abstract
solution for a certain computational problem with
specified inputs and outputs. This interface
completely obscures the hardware architecture, the
related underlying scheduling and communication
mechanisms.
We advise to introduce this abstraction here
as a third layer instead of trying to force into the
second one. Using this abstraction, the memory and
address space management and the algorithmic
code can be separated. This enables the
virtualization of hardware resources of multiple PUs
for the source WI, and it also makes possible the
virtualization of the execution environment for the
target WIs that can be exploited for writing reusable
task codes [4]. This is advantageous since tasks
usually have very similar implementation that can be
usually fused by defining a simple memory address
translation for the input/output data.
In the terms of our model, an abstract task
solves a certain computational problem on well
defined data. For instance, an abstract task can be
multiplication of two sparse matrices, sorting a
sequence, or reconstruction of a volume from its X-
ray projections. An abstract task refers of a set of
different tasks that implement the functionality of the
abstract task, and a control logic that selects and
parameterizes one of these tasks for a given
abstract hardware configuration and the specified
extent of the input/output data. Dealing with
computational
problems
with
high
memory
requirements, the
Geometric Decomposition design pattern
[Mattson et al.2005] is an appropriate solution to the
recurring problem of execution organization and
managing data decomposition among multiple WIs
of the adjacent levels of parallelism [5]. In this case,
the problem space is partitioned into chunks, where
the solution for each chunk can be solved using
data from only a few other chunks. This scheme
requires the following operations to be implemented
for a certain task:
- The global problem space is partitioned into
coarse-grained chunks by the split and merge
operation pair considering the shape of the chunks.
Decomposition can be performed using write and
read memory copies or memory mappings.
- The exchange operation ensures that each
task has access to all data needed for its
subsequent execution by target-to-target data
transfer.
- The computation is done by the execute
operation, that up-dates the data within the chunk by
instantiate WIs on the tar-get PU.
To
efficiently
encapsulate
the
data
decomposition strategy for both memory transfer
operations like split, exchange, merge, and for
unifying the environment for the called WIs we apply
address translators (AT) [Lefohn et al. 2006]. An AT
is an object for memory read and write operations
ЕСТЕСТВЕННЫЕ НАУКИ
149
supporting both random access reads and writes,
and range translations to support efficient memory
copy operations.
Technically, only the index space splitting
scheme have to be specified by the programmer,
since it is closely related to the solved problem. We
think there is no framework that can do it
automatically, thus in our solution just a structured
way is defined for the programmer to express it.
Nevertheless, the number of practical splitting
schemes is usually low, usually cloning or modulo
partitioning (for instance into stripes or chessboard
cells) is appropriate [6]. This index space splitting
scheme then directly implies the automatic
execution of instantiation and memory space
manipulation commands. As an example, distribu-
tion of the problem space among job in-stances,
SMP processes, and GPU kernel instances. The
specific task implementation of the abstract task is
selected based on the hardware resources and
extent of the input/output data. The hardware
resources and the input/output data also rules the
selection and the parameterization of the split/merge
parameters and the address translators
References:
1. A. V., A. 2007. A Higher-Level and Portable
Approach to GPGPU programming. In
Proceedings of SYRCoSE’2007.
2. AMD/ATI. 2008. ATI Stream Computing –
Technical Overview. Tech.rep., AMD Inc.
3. 2006. Brahma: Shader Meta-Programming
framework .NET. http://brahma.ananthonline.net/.
4. BUCK, I., FOLEY, T., HORN, D., SUGER-
MAN, J., FATAHALIAN, K.,HOUSTON, M.,AND
HANRAHAN, P. 2004. Brook for GPUs: Stream
Computing on Graphics Hardware. ACM Trans.
Graph. 23, 3, 777–786.
5. CABRAL, B., CAM, N., AND FORAN, J.
1994. Accelerated volume rendering and tomograp-
hic reconstruction using texture mapping hardware.
In VVS ’94: Proceedings of the 1994 symposium on
Volume visualization, ACM, New York, NY, USA, 91–
98.
6. FELDKAMP, L. A., DAVIS, L. C., AND
KRESS, J. W. 1984. Practical Cone-Beam Algo-
rithm. Journal of the Optical Society of America A 1
(Jun), 612–619.
Түйін
Берілген мақалада GPU соңғы модельдері үшін көпдеңгейлі бағдарламалау модельдерінің
мүмкіндіктері суреттелген. GPU-кластерлі жүйелері үшін графикалық орталық масштабталған
көппроцессорлы жүйелері арқылы жұмыс жасайтын кооперативті жүйелер құрылымы берілген.
Резюме
В этой статье описаны возможности многоуровневой модели программирования для
последних GPU на основе высокопроизводительных вычислительных систем. Использование
кооперативной системы и симметричной многопроцессорной модели чтения, предоставляющая
вычислительную структуру, которая работает через масштабируемую многопроцессорную
графическую среду для GPU-кластерных систем.
УДК 004.67
ПРОБЛЕМА СБОРА, НАКОПЛЕНИЯ И РАСПРОСТРАНЕНИЯ
ЭКОЛОГИЧЕСКОЙ ИНФОРМАЦИИ
Абдрахманова А.Б. – магистрант Костанайского государственного университета им.
А.Байтурсынова
Усембаева А.У. – старший преподаватель кафедры информатики и математики
Костанайского государственного университета им. А.Байтурсынова
Аннотация
В статье рассмотрены основные проблемы сбора, накопления и распространения
экологической информации, описан Закон РК об «экологической информации». Выявлены основные
этапы работы с экологической информацией, а также проблемы пользователя сети Internet при
поиске экологической информации.
Ключевые слова: экологическая информация, сбор, накопление информации, анализ,
обработка.
Проблемы экологии являются сферой ин-
тересов и деятельности государственных орга-
нов, общественных организаций, научно-иссле-
довательских учреждений
и
т.д.
Владение
ЖАРАТЫЛЫС ҒЫЛЫМДАРЫ
150
экологической информацией имеет первостепен-
ное значение для обеспечения рационального
использования природных ресурсов и охраны ок-
ружающей среды. Библиотеки накопили богатый
опыт в сборе и предоставлении подобной ин-
формации.
В Казахстане существует достаточно раз-
витое законодательство по вопросам сбора, на-
копления, распространения и доступа к экологи-
ческой информации.
Настоящий Закон в соответствии с Конвен-
цией о доступе к информации, участию общест-
венности в процессе принятия решений и досту-
пе к правосудию по вопросам, касающимся окру-
жающей среды от 25 июня 1998 года закрепляет
право граждан и организаций на доступ к эколо-
гической информации и предусматривает право-
вые, экономические и организационные основы
реализации данного права.
Экологическая информация - любая ин-
формация в письменной, аудиовизуальной,
электронной или любой иной материальной
форме о:
1) состоянии объектов охраны окружаю-
щей среды, включая атмосферу, воды, почву,
землю, недра, растительный и животный мир, а
также их взаимодействии;
2) любой хозяйственной или иной деятель-
ности физических или юридических лиц, а также
таких факторах, как вещества, энергия, шум или
излучение, оказывающих или могущих оказать
воздействие на объекты охраны окружающей
среды, указанные в пункте 1;
3) деятельности государственных органов
и организаций, находящихся в ведении госу-
дарственных органов, в пределах их компетен-
ции по охране окружающей среды, включая при-
родоохранных планах, программах, проектах и
иных мероприятиях, направленных на охрану ок-
ружающей среды;
4) состоянии здоровья и безопасности
граждан, состоянии зданий, строений и соруже-
ний в той степени, в какой на них воздействует
или может воздействовать состояние объектов
охраны окружающей среды, или, посредством
этих объектов, факторы, деятельность или
меры, указанные в пунктах 2 и 3.
Закон регулирует общественные отноше-
ния, возникающие в связи с реализацией прав
граждан и организаций на доступ к экологичес-
кой информации.
Любому физическому или юридическому
лицу гарантируется право на свободный доступ к
экологической информации, располагаемой ор-
ганами обращения, без необходимости форму-
лировать свой интерес в получении такой ин-
формации в порядке и способом, предусмотрен-
ными настоящим Законом. Лицо, заинтересован-
ное в получении экологической информации,
также может обратиться в любой орган обраще-
ния, располагающий запрашиваемой экологи-
ческой информацией, вне зависимости от своего
места жительства или места нахождения [1].
Для предоставления экологической инфор-
мации подается заявление о предоставлении ин-
формации заинтересованным лицом в орган об-
ращения в письменной форме и, кроме све-
дений, подлежащих указанию в соответствии с
Указом
Президента
Республики
Казахстан,
имеющим силу закона, "О порядке рассмотрения
обращений граждан", должно в обязательном по-
рядке содержать:1) фамилию, имя, отчество и
данные о месте жительства гражданина (наиме-
нование и место нахождения для юридического
лица); 2) описание запрашиваемой экологичес-
кой информации, позволяющее конкретно опре-
делить ее объем и содержание; 3) приемлемые
для заявителя форму и способ получения эколо-
гической информации с учетом требований.
Орган обращения, рассмотрев поступив-
шее заявление о предоставлении экологической
информации, принимает решение о предостав-
лении или отказе в предоставлении экологи-
ческой информации.
Порядок предоставления экологической
информации
1. В случае принятия решения о пре-
доставлении экологической информации орган
обращения предоставляет запрашиваемую эко-
логическую информацию не позднее одного ме-
сяца с момента подачи заявления о предостав-
лении экологической информации.
2. В исключительных случаях при боль-
шом объеме или сложности запрашиваемой ин-
формации срок предоставления экологической
информации может быть продлен, но не более
чем до двух месяцев с момента подачи заявле-
ния о предоставлении экологической информа-
ции. При этом соответствующий орган обраще-
ния информирует заявителя в письменной фор-
ме с указанием срока и причин такого продления.
3. Срок предоставления экологической ин-
формации увеличивается также в случае нап-
равления органом обращения заинтересован-
ному лицу письменного запроса в соответствии с
пунктом 1 статьи 11 настоящего Закона на срок,
предусмотренный пунктом 2 этой же статьи, если
только данное заинтересованное лицо не пре-
доставило ответ на запрос в более короткий
срок.
4. В случае, если информация, не подле-
жащая раскрытию в соответствии со статьями 9
и 10 настоящего Закона, может быть отделена от
остальной запрашиваемой экологической инфор-
мации без ущерба для конфиденциальности ин-
формации, не подлежащей разглашению, орган
обращения предоставляет остальную часть зап-
рашиваемой экологической информации. При
этом заявитель информируется об основаниях
отказа в предоставлении части запрашиваемой
экологической информации, признанной конфи-
денциальной.
ЕСТЕСТВЕННЫЕ НАУКИ
151
5. Экологическая
информация
предос-
тавляется заявителю в объеме, содержании,
форме и способом, указанными в заявлении о
предоставлении экологической информации, с
учетом требований пункта 4 статьи 5 настоящего
Закона. При необходимости к материалам, со-
держащим экологическую информацию, прила-
гаются копии документов, подтверждающих эту
информацию.
Экологическая информация предостав-
ляется бесплатно либо за плату, не превышаю-
щую стоимости копирования и (или) иной под-
готовки материалов, содержащих запрашивае-
мую экологическую информацию.[1]
Национальный доклад о состоянии окру-
жающей среды в Республике Казахстан
1.Центральный исполнительный орган в
области охраны окружающей среды с периодич-
ностью один раз в 2 года публикует в средствах
массовой информации и распространяет Нацио-
нальный доклад о состоянии окружающей среды
в Республике Казахстан. Порядок опубликования
и распространения Национального доклада о
состоянии окружающей среды в Республике Ка-
захстан определяется Правительством Респуб-
лики Казахстан.
2. Национальный доклад о состоянии окру-
жающей среды в Республике Казахстан должен
содержать следующие сведения:
1) об общем состоянии и уровне загрязнен-
ности окружающей среды на территории отдель-
ных областей и по республике в целом;
2) о расходовании средств республи-
канского бюджета и иных не запрещенных зако-
нодательством средств на природоохранные
планы, программы, проекты и иные мероприятия
по охране окружающей среды по отдельным об-
ластям и по республике в целом;
3) об объемах имеющихся запасов и
объемах использования и воспроизводства при-
родных ресурсов на территории отдельных
областей и по республике в целом;
4) о способах и уровне воздействия на ок-
ружающую среду хозяйственной и иной деятель-
ности физических и юридических лиц, в частнос-
ти об объемах производимых сбросов и выбро-
сов на территории отдельных областей и по рес-
публике в целом;
5) о количественных показателях наруше-
ний физическими и юридическими лицами требо-
ваний законодательства об охране окружающей
среды на территории отдельных областей и по
республике в целом;
6) о предъявленных центральным испол-
нительным органом в области охраны окружаю-
щей среды и его территориальными органами
претензиях и исках в суд, связанных с возме-
щением ущерба (вреда) окружающей среде, здо-
ровью и имуществу граждан, причиненного нару-
шением требований законодательства об охране
окружающей
среды,
а
также
результатах
предъявления претензий и судебных разбира-
тельств по таким искам.
Сбор, накопление, распространение, дос-
туп к экологически значимой информации регу-
лируется также рядом природоохранительных
актов, предусматривающих разнообразные пути
и формы сбора, накопления и иные виды обра-
щения с такой информацией.
Чрезвычайно важно информирование на-
селения об экологически значимых факторах,
влияющих на здоровье людей.
Неправомерный отказ в доступе к экологи-
ческой информации, а равно не предоставление,
несвоевременное предоставление либо предос-
тавление неполной или заведомо ложной инфор-
мации могут быть обжалованы в судебном по-
рядке [1].
Основные этапы работы с информа-
цией
Работа с информацией вообще и с эколо-
гической информацией в частности – довольно
сложный процесс, состоящий из нескольких эта-
пов. Поэтому прежде чем говорить об отдельных
проблемах, которые могут встретиться при рабо-
те с экологической информацией, опишем весь
алгоритм целиком. В обобщенном виде мы пред-
ставляем его себе следующим образом:
1. Определение цели и составление плана
работы.
2. Сбор информации.
3. Анализ и обработка полученной инфор-
мации, вывод результатов обработки.
4. Подготовка материала (интерпретация в
соответствии с целями работы, а также в соот-
ветствии с особенностями аудитории – напри-
мер, упрощение сложной технической информа-
ции).
Рассмотрим каждый этап более подробно.
Определение цели и составление плана
работы
С определения цели, в идеале, должна на-
чинаться любая работа. От того, какая цель пос-
тавлена, зависит характер информации, которую
вам предстоит собрать, ее источники и методы
обработки информации, глубина анализа проб-
лемы. Необходимо представлять, о какой проб-
леме или о каком событии вы хотите рассказать
людям [2].
Но, допустим, вы по заданию редакции на-
чали работу над темой, с которой вы совершен-
но не знакомы. Типичная ситуация, не правда
ли? Как в этом случае определить цель? Задайте
себе такие вопросы: сколько времени у вас на
подготовку материала, каков будет жанр мате-
риала (понятно, что условия работы над корот-
кой новостью и аналитической статьей будут раз-
ными), насколько серьезно вы намерены углуб-
ляться в данную проблему (то есть насколько
лично вы в ней заинтересованы)? На начальном
этапе можно формулировать цель как "прояснить
суть проблемы и понять, каковы возможные пути
ее решения". По мере изучения разного рода
|