F# FSharpMap по сравнению с исполнением Словаря

Я задавался вопросом, как неизменная Карта F# работает против стандартного Словаря.

Я пишу функцию количества (для каждого набора инкремента поиска строки) для использования на больших файлах с миллионами строк и тысячами элементов.

Что относительно использования памяти?

Спасибо

16
задан Shimmy 10 August 2010 в 00:33
поделиться

1 ответ

Мне было интересно, как F# immutable Map работает против стандартного Dictionary.

Смотрите Visual F# 2010 для технических вычислений страницы 241-242 "Оптимизация: Использование изменяемых структур данных". Показано, что Dictionary работает на 5-40× быстрее, чем Map в очень похожей настройке подсчета частот на ints как функции количества уникальных ключей.

В целом, чисто функциональные структуры данных, такие как Map, не только чрезвычайно медленны в последовательном случае, но и разрушают масштабируемость целых параллельных программ. Недавно я прочитал лекцию об этом.

BTW, не забывайте, что существует функция Seq.countBy!

18
ответ дан 30 November 2019 в 22:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: