Сидоркина И.Г., Белоусов С.А., Хукаленко К.С., Нехорошкова Л.Г. —
Алгоритм поиска плагиата в исходном коде программного обеспечения
// Программные системы и вычислительные методы. – 2013. – № 3.
– С. 7 - 7.
DOI: 10.7256/2454-0714.2013.3.9602
Читать статью
Аннотация: Программирование характеризуется большим числом разнообразных правил, приемов, методов и средств его выполнения, применение которых зависит от квалификации, опыта и индивидуальных особенностей программистов. Анализируются особенности алгоритмов анализа плагиата программного кода, величины семантического шума в текстах программ на основе исследуемых методов. Приводится алгоритм с использованием комбинированного подхода некоторых текстовых и семантических алгоритмов. Показано, в какое представление переводится исходный код программ в большинстве современных алгоритмов, далее описаны классы современных алгоритмов поиска плагиата в исходных текстах программ. В результате представлен усовершенствованный алгоритм поиска плагиата, предлагаемый для использования в учебной практике для выявления плагиата среди лабораторных работ студентов. Полученный алгоритм объединяет в себе как плюсы текстовых алгоритмов, так и семантических, при этом основная вычислительная часть имеет очень хороший параллелизм, что сокращает время ее выполнения при наличии вычислительных мощностей.
Лучинин З.С. —
Структура данных для документо-ориентированных баз данных
// Программные системы и вычислительные методы. – 2013. – № 3.
– С. 1 - 1.
DOI: 10.7256/2454-0714.2013.3.10772
Читать статью
Аннотация: В статье приводится подход, который позволяет уменьшить нагрузку при запросах к нереляционной СУБД, благодаря использованию алгоритмов деревовидных структур хранения данных. Производительность операций по обработке данных различна в зависимости от используемых структур данных. Исследование древовидных структур, таких как B + деревья, объединения деревьев в журнальную структуру или фрактальные деревья показало, что в алгоритмах с их использованием операции с данными осуществляются быстрее, чем в MySQL. В работе рассмотрен алгоритм LSM дерева в применении к документо-ориентированным базам данных. Описана работа алгоритма при выполнении основных операций (создание, чтение, редактирование и удаление) с данными. В основу предложенного алгоритма работы с индексом ставят B деревья или B+ деревья. Недостатками данных структур являются трудоемкость балансировки дерева при добавлении нового значения в индекс и ресурсоемкость, так как индекс хранится в оперативной памяти. Дерево слияния со структурой журнала (Log-Structured Merge-Trees, LSM) является структурой данных, обеспечивающей низкую стоимость операции индексирования и высокую скорость добавления и удаления данных Алгоритм на основе LSM-дерева можно использовать при горизонтальном масштабировании. Каждый узел образует отсортированную последовательность данных по ключу. Диапазон ключей каждого сервера хранится на мастер-сервере, что позволяет без дополнительных запросов обратиться к серверу, на котором хранятся запрашиваемые данные. Таким образом, достигается увеличение скорости поиска данных и балансировка нагрузки по доступным серверам.
Шелеметьева Я.В. —
Исследование технологии удаленного прямого доступа к памяти в архитектурах высокопроизводительных систем
// Программные системы и вычислительные методы. – 2013. – № 3.
– С. 2 - 2.
DOI: 10.7256/2454-0714.2013.3.10773
Читать статью
Аннотация: В данной статье описываются основные принципы технологии удаленного прямого доступа к памяти (RemoteDirectMemoryAccess – RDMA, англ.) в архитектурах высокопроизводительных вычислительных систем.Особое внимание уделеноалгоритмам передачи данных в сеть/из сети:рассмотрен стандартный алгоритм передачи данных (на примере сетей, построенных на основе стека протоколов TCP/IP), и алгоритм с использованием технологии RDMAв указанных системах. Исследованы наиболее популярные вычислительные архитектуры, поддерживающие режим удаленного прямого доступа к памяти, показана эффективность применения технологии RDMA в высокопроизводительных сетевых архитектурах на примере сетей 10 GigabitEthernet. С использованием теории множеств, на основе расчетов рабочих тактов процессора при выполнении обработки сетевых команд и данных осуществляется сравнение производительности узлов вычислительных систем, передача данных в которых происходит по стандартным алгоритмам и узлов, в которых реализована технология RDMA. Обоснована целесообразность использования технологии RDMA в вычислительных узлах высокопроизводительных архитектур. В архитектурах современных компьютерных систем вычислительные узлы объединены между собой сетевыми технологиями, и значительный объем данных передается по сети. Одним из методов повышения эффективности работы вычислительных узлов, а значит и сетевой вычислительной системы в целом, является разгрузка их процессоров от сетевых вычислений с помощью режима удаленного прямого доступа к памяти (RDMA).Режим RDMA – это технология, которая позволяет передавать сетевые данные, минуя центральный процессор, напрямую из буферов сетевого адаптера в буферы приложения, тем самым освобождая процессор от обработки сетевых данных В вычислительных архитектурах высокопроизводительных систем объем входящего и исходящего сетевого трафика очень высок, и обработка сетевых данных занимает большое количество процессорного времени, поэтому предложенная технология удаленного прямого доступа к памяти актуальна для разгрузки процессора конкретного вычислительного узла, а значит, и для повышения производительности системы в целом. По сравнению со стандартной передачей данных, в которой процессор вычислительного узла системы полностью обрабатывает сетевые данные, технология RDMA позволяет освободить процессор от сетевой нагрузки и направить всю производительную мощность на решение внутренних задач, тем самым повысив скорость решения задач и надежность системы в целом.
Сидоркина И.Г. —
Кусочно-линейная аппроксимация при решении задач извлечения данных
// Программные системы и вычислительные методы. – 2013. – № 2.
– С. 7 - 7.
DOI: 10.7256/2454-0714.2013.2.7943
Читать статью
Аннотация: Прогнозирование является одним из основных вопросов, которые возникают при анализе временных рядов. При этом ставится задача определить будущее поведение временного ряда по его известным прошлым значениям. В данной работе предложен метод для прогнозирования временных рядов, который базируется на идеи выделения базовых паттернов (шаблонов) из исходных данных и позволяет установить внутренние закономерности исследуемого ряда.
На сегодняшний момент одним из подходов, в котором ведутся исследования в области прогнозирования временных рядов, является системы Data Mining или “раскопка данных”. Это связано с тем, что классические методы, основанные исключительно на линейных (ARIMA) и нелинейных (GARCH) моделях прогнозирования, не позволяют достичь необходимой точности прогноза. Используя методы, разработанные в рамках данной технологии, можно увеличить эффективность прогнозирования и выявить скрытые закономерности в исследуемых временных рядах.