LINUX.ORG.RU

Functional Java 2.8

 , , ,


0

0

Библиотека Functional Java и новые возможности параллелизации в JVM 7 позволяют ускорить выполнение параллельных вычислений на платформе Java. Например, вычисление числа Фиббоначчи от 35 сокращается с 45 до 7 секунд, т.е. более чем в 6 раз!

>>> Подробности

anonymous

Проверено: Shaman007 ()

> Например, вычисление числа Фиббоначчи от 35 сокращается с 45 до 7 секунд, т.е. более чем в 6 раз!

А бесконечный цикл выполняется всего за 10 минут.

gaa ★★
()

ну поправте что ли, Фибоначчи бы обиделся...

anonymous
()

Моррис изобрел Эрланг !! круто, а как с другими ограничениями(не только в перфОрмансе) ? остальные части - тоже "расширим" внешними либами ? включая сам JIT. при чем тут, тогда, слово "Джабба" ?

BasileyOne
()
Ответ на: комментарий от gaa

>А бесконечный цикл выполняется всего за 10 минут

надо говорить корректней - "стал выполняться быстрее более чем в шесть раз" ;) и графики соответствующие нарисовать. глвное - чтобы было красиво и убедительно :)

jtootf ★★★★★
()
Ответ на: комментарий от BasileyOne

> Например, вычисление числа Фиббоначчи от 35 сокращается
> с 45 до 7 секунд, т.е. более чем в 6 раз!

Не понятно ничего :(

----
#!/usr/bin/env python.
# -*- coding:utf-8 -*-.

def fib(n):
a, b = 0, 1
for i in xrange(n):
a, b = b, a + b
return a

print fib(35)
-----

time ./fb2.py
9227465

real 0m0.010s
user 0m0.006s
sys 0m0.004s

Что это за цифры 35, 45 и даже 7 секунд ?

anonymous
()
Ответ на: комментарий от anonymous

Очевидно, что речь идёт о рекурсивном вычислении.

Правда, я всё равно не понял на счёт параллелизма, а в один поток оно считается раз в 10 быстрее.

KRoN73 ★★★★★
()

Ну наконец то мля, а то я в день штук по двадцать чисел Фиббоначчи считаю.

Капча подтверждает мой сарказм: saddier

anonymous
()

>Проверено: Shaman007 (*) 27.07.2008 12:19:59

Теперь понятно что за бред в новости написан.

Metallic
()

бред сивой кобылы. числа ебоначи в 6 раз быстрее не может вычисляться.

anonymous
()
Ответ на: комментарий от gaa

>А бесконечный цикл выполняется всего за 10 минут.

Нет, быстрее, всего за 8,5 минут, если конечно я правильно понимаю что ты имеешь в виду под бесконечным цыклом

anonymous
()
Ответ на: комментарий от anonymous

>Что это за цифры 35, 45 и даже 7 секунд ?

Блин, тебе же уже много раз говорили. Жаба быстрее чем С. Только тормозит сильнее. А так быстрее. На графики посмотри, мало ли что у тебя там time показывает. На графиках ведь нарисовано что Жаба быстрее.

anonymous
()
Ответ на: комментарий от anonymous

> Блин, тебе же уже много раз говорили. Жаба быстрее чем С. Только тормозит сильнее.

Ява не тормозит. Доказано Томми.

orcy
()

краткость - сестра таланта.

-module(fib).
-export([main/0]).

fib(N) when N > 2 -> fib(N-2) + fib(N-1);
fib(_) -> 1.

main() ->
  io:format("fib(35)=~p~n", [fib(35)]),
  halt().

----------

]$ time erl -s fib main -noshell
fib(35)=9227465
0.37s user 0.02s system 93% cpu 0.424 total

anonymous
()
Ответ на: комментарий от anonymous

> time ./fb2.py
> 9227465
>
> real 0m0.010s
> user 0m0.006s
> sys 0m0.004s

А ещё быстрее слабо? ;)
Речь идёт о словах "параллельный" и "функциональный", очевидно, господа использовали самый тупой алгоритм для теста.

const86 ★★★★★
()
Ответ на: комментарий от KRoN73

> Фига се. За счёт чего он так? Окамл или Хаскелл при том же формате записи считают много дольше.

Небось, memoize. С ходу не придумывается другого способа _автоматически_ оптимизировать такую функцию.

const86 ★★★★★
()
Ответ на: комментарий от const86

memoize даст время порядка итерации, а тут всетаки значительно (на порядки) больше

aist1 ★★★
()
Ответ на: комментарий от anonymous

> Например, вычисление числа Фиббоначчи от 35 сокращается
> с 45 до 7 секунд, т.е. более чем в 6 раз!

Число Фибоначчи можно и за log(n) посчитать, еще быстрее.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.