Взял с розеты два исходника. Один на Go (http://rosettacode.org/wiki/Atomic_updates#RWMutex) и один на D (http://rosettacode.org/wiki/Atomic_updates#D). Дополил до более-менее одтнакового алгоритма.
В результате вариант на D показывает в районе 6M операций в секунду, вариант на Go — в районе 8M.
Вот как они это делают?
Кстати, варианта на rust-е — нет. Может есть кто из фанатов раста — сделает?
Вариант на D: http://pastebin.com/QJZaz8di
Вариант на Go: http://pastebin.com/aVJMBueT
Версии компиляторов:
И там и там — текущие релизы.
Go — go version go1.4 linux/amd64
D — DMD64 D Compiler v2.066.1
В результате вариант на D показывает в районе 6M операций в секунду, вариант на Go — в районе 8M.
Вот как они это делают?
Кстати, варианта на rust-е — нет. Может есть кто из фанатов раста — сделает?
Вариант на D: http://pastebin.com/QJZaz8di
Вариант на Go: http://pastebin.com/aVJMBueT
Версии компиляторов:
И там и там — текущие релизы.
Go — go version go1.4 linux/amd64
D — DMD64 D Compiler v2.066.1
Originally published at U.F.M's Homepage. You can comment here or there.