The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Проект elk развивает компактный JavaScript-движок для микроконтроллеров"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Отдельный RSS теперь доступен для каждого обсуждения в форуме и каждого минипортала.
. "Проект elk развивает компактный JavaScript-движок для микрок..." –1 +/
Сообщение от n00by (ok), 25-Сен-21, 19:09 
>> Составило (очень грубо) 0m0,069s
>> Потом порекомендовали использовать JIT, что замедлило вычисление в 10 раз.
> Как мерял? Время компиляции кода jit'ом включено в эти 0,069 сек? Что-то
> мне подсказывает, что да.

По ссылке указано.


$ cat fibonacci.js
#!/usr/bin/node

function fib(n) {
  let a = 1;
  let b = 1;
  for (let i = 3; i <= n; i++) {
    let c = a + b;
    a = b;
    b = c;
  }
  return b;
}

console.log(fib(77));

$ time ./fibonacci.js
5527939700884757

real    0m0,069s
user    0m0,041s
sys    0m0,030s

C JIT в следующем сообщении https://www.opennet.ru/openforum/vsluhforumID3/125336.html#132

$ time node --always-opt ./fibonacci.js
5527939700884757

real    0m0,703s
user    0m0,636s
sys    0m0,069s

> Если так, то для "честного" сравнения с
> C, надо приплюсовать в него время компиляции C'шного кода.

Это сравнение не с Си. Интерпретатор встраиваемый, его нет в виде самодостаточного приложения. Что бы исполнить сценарий на JS, надобно файл считать или заэмбеддить; я выбрал последний вариант. Не вполне корректно, поскольку не учитывается чтение файла Нодой, но при такой разнице в результатах погрешностью измерений решил пренебречь.

> Ну, или если хочешь, я могу сказать иначе: ты взял какой-то искусственный
> тест производительности, и почему-то считаешь его результаты переносимыми на больший класс
> ситуаций.

Всё немного проще. Внизу приписка "на данной задаче..." :) Вчера Анонимом (по-моему, Урри) заявил, что JS в браузерах пожёг гигаваты. Ему возразили, что учёные с Питоном потратили больше, а JS самый быстрый. Я взял что подвернулось под руку и сравнил, но не с Питоном, а со своим интерпретатором. Сегодня читаю эту тему, вспомнил вчерашние "тесты" и решал немного разбавить негатив.

> Переносимость результатов -- это большая проблема, до недавнего времени её
> называли "внешней валидностью" исследования, и это было сплошное гуманитарное размахивание
> руками. Сейчас ты можешь почитать The Book of Why, писанную старым
> евреем Judea Pearl (я очень рекомендую: он хоть и математик, но
> писал книгу для ГСМов всяких, поэтому формулы там хоть и есть,
> но не все, и при этом изложения алгоритмов нет, они лишь
> упомянуты, и вывода формул нет, и доказательств теорем нет, вместо них
> рассуждения, которые будут понятны и ребёнку), и он там это "внешней
> валидности" расширяет, называет "переносимостью" (transportability), и предлагает математические
> методы оценки этой переносимости.

Спасибо.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Проект elk развивает компактный JavaScript-движок для микроконтроллеров, opennews, 25-Сен-21, 10:37  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру