K-means, multithreading. C++
1500 UAHРеализовать кластеризацию k-means с помощь С++ используя multithreading. Создать от 1 до 3 потоков и сравнить время выполнения программы. Должна принимать ввод из командной строки.
Входные данные : файл
Выходные данные : файл
По общей договоренности: svg рисунок с кластеризацией.
Использование алгоритма : можно взять с интернета (предупредив), будет проверяться на плагиат.
Более детально - ниже. Примерочную программу в личные сообщения.
Общие требования:
- Включать имплементацию с одним или, возможно, несколькими потоками.
- Имплементация для одного потока обязательна, за имплементацию с большим количеством потоков бонус
- С легкостью проходить инструменты проверки, такие как Valgrind, Helgrind,…
- Программа должна быть переносимой для разных архитектур и операционных систем. Запрещено использование языковых расширений, поддерживаемых только некоторыми компиляторами. Запрещено использовать WINAPI и POSIX напрямую. (Связывание библиотеки pthread с программой разрешено)
- Программа предоставляет неинтерактивный интерфейс, т.е. принимает ввод из командной строки, вводит данные из файла .
- Программа имплементирует переключатель --help - выводит список как используется программа и завершает работу.
- Программа не принимает неизвестные переключатели (отображает ошибку)
Код
* Содержит ли ваш код файл CMakeLists.txt, с помощью которого можно построить проект?
* Использует ли ваш код несколько потоков, если он имеет несколько ядер?
* Включает ли ваш код однопоточную имплементацию?
* Не использует ли код языковые расширения? (Например, OpenMP, VLA)
* Не использует код непереносимые библиотеки (например, POSIX, Win32)
Измерение
* Было ли измерение оптимизированной программы? (Был ли двоичный файл скомпилирован в режиме «Release»?)
* Был ли запуск с использованием большего количества потоков быстрее?
* Работал ли многопоточный запуск так же, как и однопоточный?
Отзыв заказчика о сотрудничестве с фрилансером
K-means, multithreading. C++Работал с фрилансером 2й раз, все в сроки и профессионально, прошлый отзыв можно прикрепить к этому. Рекомендую.
Отзыв фрилансера о сотрудничестве с Ihor Petrenko
K-means, multithreading. C++Повторное сотрудничество в рамках другой алгоритмической задачи прошло успешно. Все исходные данные были предоставлены своевременно. Срок, цену и функционал согласовали быстро. Результаты работы (как промежуточные, так и финальный) Игорь проверил достаточно оперативно. Рекомендую его как адекватного заказчика.
![]()
-
228 8 1 1 Доброго дня!
Я выполнял различные проекты на языке C++ (куда более сложные, чем этот), а также уже имею опыт с многопоточностью и CMake Данный метод кластеризации уже изучал в университете более подробно, поэтому с легкостью выполню задачу. Качество кода и комментариев гарантирую.
Срок стоит в 5 дней для того, чтобы успеть все сделать, и ничего не могло сорвать выполнение проекта.
-
Не совсем понятное ТЗ. Мультипоточность в C без зависимости от ОС не сделать. pthread это всего лишь одна из попыток убрать зависимость от ОС. Выбор использования нескольких ядер или одно - ОСозависимо, проблемы нет, но в каждой ос делают по своему. Непонятно в каком виде в SVG будет инфа. То что там будет кластер лично мне ни о чем не говорит. Пример бы посмотреть такого svg. Ну и если работу с ним писать самому то счет уже сразу пойдет как минимум на недели и стоимость на килобаксы. И по поводу переносимого кода тоже бы лучше уточнить. Переносимый вообще или переносимый между 32 отдельно и 64 отдельно
-
Актуальные фриланс-проекты в категории C и C++
Реверс-инжиниринг консольных утилит для опроса контроллеров SSD (Flash ID)1. Цель работы Выделение программного интерфейса (API) взаимодействия с контроллерами SSD/NVMe из предоставленного набора консольных утилит (Phison, Silicon Motion, Realtek, Maxiotek, Marvell, JMicron и др.). Результатом должно стать рабочий код на языке C/C++ или точная… C и C++, Десктопные приложения ∙ 9 дней 22 часа назад ∙ 6 ставок |
Разработка карты семян Minecraft Java / просмотрщика семян для сайтаРазработка карты семян Minecraft Java / Seed Viewer для сайтаОписание проекта Необходимо разработать браузерный инструмент Minecraft Java Seed Map / Seed Viewer, который будет работать на нашем сайте и позволит пользователю ввести семя Minecraft Java Edition и просмотреть… C и C++, HTML и CSS верстка ∙ 10 дней 5 часов назад ∙ 16 ставок |