Описание тега libcds
CDS - это библиотека шаблонов C++ безблокировочных и детализированных алгоритмов. Он содержит коллекцию параллельных реализаций структур данных.
1
ответ
Как включить libcds в проект VS2015?
Я работаю над окнами. Как включить библиотеку CDS в проект VS? Я не смог найти ни каталог "include", ни каталог "lib". http://libcds.sourceforge.net/doc/cds-api/index.html
09 май '17 в 23:43
1
ответ
Удаление узла очереди Энтони Уильямса без блокировки
Я реализую очередь без блокировки, описанную Энтони Уильямсом в "Параллелизме C++ в действии". Я тестирую это как новый контейнер libcds. Поп и пуш тесты работают нормально. Но тестирование нескольких производителей, тестирование нескольких потребит…
30 янв '17 в 22:37
1
ответ
Параллельный набор для C++?
Я ищу структуру данных без блокировки в C++, чтобы заменить следующее: pthread_mutex_lock(plock); set.insert(element); pthread_mutex_unlock(plock); Набор должен поддерживать .insert() а также .size() с максимальной сложностью O(logN), имеет итератор…
05 ноя '14 в 00:22
1
ответ
Фатальная ошибка - Нет такого файла или каталога
Я установил библиотеку CD с командой ./build.sh -b 64 -z '-std=c++0x' -l '-L /usr/lib/x86_64-linux-gnu' --with-boost /usr/include/boost --amd64-use-128bit в build папка. После того, как я попытался скомпилировать пример init.cpp из src папку, я набр…
18 фев '16 в 01:12
1
ответ
Используйте libcds SplitListMap с std::string
Я пытаюсь создать хэш-карту, которая будет отображать std::string в std::stringДо сих пор я использовал следующий код: template<typename TKey, typename TValue> struct lockfree_hash_map_traits_t : public cds::container::split_list::type_traits …
19 сен '13 в 07:22
1
ответ
Библиотека cds: michael_deque вызывает сбой при возврате производного типа пользовательского типа (только в режиме выпуска)
Я использую VS2012 с настройками оптимизации по умолчанию (/O2), и эта проблема существует только в режиме выпуска. У меня есть код, который использует michael_deque (со стандартным GC) и указатель на (абстрактный) тип T,Когда я пытаюсь отодвинуть у…
31 авг '13 в 17:27
1
ответ
Можем ли мы что-то сделать атомарно с двумя или более контейнерами без блокировки, не блокируя оба?
Я ищу составные операции - это довольно легко сделать, используя транзакционную память. (Спасибо Ами Тавори) И это легко сделать с помощью блокировок (мьютекс / спин-блокировка) - но это может привести к тупикам - поэтому алгоритмы на основе блокиро…
11 авг '16 в 11:21
1
ответ
Есть ли какой-нибудь тест скорости между "std::map with mutexes" и "libcds maps (Michael Hashmap и Split Order List)" "параллельной вставкой, поиском, стиранием?
Поэтому мне бы очень хотелось увидеть тестирование скорости параллельных (примерно от 100 до 10000 параллельных потоков), где каждый поток вставляет, находит, удаляет по крайней мере 3 типа одновременных карт - std::map (с некоторыми мьютексами) vs …
27 авг '11 в 18:50
1
ответ
LibCds: Michael Hashmap и разделенный список заказов
Я использую libcds, и у них есть реализация Michael Hash Map и списка заказов Split. Основываясь на информации, которую я собрал из документа, вот как я их реализовал: включает в себя: #include <cds/map/michael_hash_map.h> #include <cds/map…
09 июл '11 в 02:03
0
ответов
Какая карта в libCDS самая быстрая при условии, что она должна иметь возможность расширять и стирать данные?
Я хочу использовать в своем проекте ассоциативный контейнер из libCDS. Проблема в том, что в libCDS их очень много. Посоветуйте, пожалуйста, какую карту лучше использовать, при условии, что она должна уметь расширять и стирать данные.
28 ноя '20 в 21:09
0
ответов
Ошибка при работе с контейнерами libCDS
Я пытаюсь освоиться с libCDS. Мне нужна карта, поэтому я решил начать с FeldmanHashMap. Проблема в том, что когда ключ - std:: string при вызове get и последующем применении оператора -> компилятор отображает ошибку test5: /home/anton/vcpkg/packages…
28 ноя '20 в 02:15