Size: a a a

WebAssembly — русскоговорящее сообщество

2019 June 17

NK

ID:414983998 in WebAssembly — русскоговорящее сообщество
Andranik Arakelov
const memory = new WebAssembly.Memory({initial:1, maximum:1});
const importObj = {
   Math,
   js: {memory:memory}
 };
Тебе не нужно объявлять memory
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
Max ja znauy, ja im ne polzuys v dannij momment
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
export function createMatrix(rows: i32, cols: i32): f64[][] {
  const data: f64[][] = new Array(rows);
  for (let i = 0; i < rows; i++) {
     data[i] = new Array<f64>(cols);
     for (let j = 0; j < cols; j++) {
         data[i][j] = Math.random() * 2 - 1;        
     }
  }    
  return data;    
}
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
tyt est oschibka ?
источник

NK

ID:693357436 in WebAssembly — русскоговорящее сообщество
i,j untyped
источник

NK

ID:414983998 in WebAssembly — русскоговорящее сообщество
ID:693357436
i,j untyped
это нормально
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
ne idet koroche
источник

NK

ID:414983998 in WebAssembly — русскоговорящее сообщество
Andranik Arakelov
ne idet koroche
Да рантайм ошибку выдает. Сейчас посмотрю почему
источник

NK

ID:414983998 in WebAssembly — русскоговорящее сообщество
Создал issue. Думаю там проблемы с RTTI.
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
okey 😄
источник

NK

ID:414983998 in WebAssembly — русскоговорящее сообщество
многомерные массивы работают, а вот с их экспортом проблемы
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
xoroscho chto est vascha besseda
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
ja xochy sozdat matrix operation library na wasm
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
na javscripte smog sdelat,no s performance slabovat on
источник

NK

ID:693357436 in WebAssembly — русскоговорящее сообщество
на производительность сильно надеяться не приходится
источник

k

kolay` in WebAssembly — русскоговорящее сообщество
Храни матрицу в одномерном массиве, сохраняя её параметры
источник

NK

ID:414983998 in WebAssembly — русскоговорящее сообщество
Если ты хочешь создать что то вроде glm только на wasm, то это уже кажется есть и супер буста ждать не стоит, потому что если ты собераешься это использовать на стороне хоста (JS) то будет весь бенефит съест интероп, то есть расходы на копирование туда-сюда данных
источник

AA

Andranik Arakelov in WebAssembly — русскоговорящее сообщество
kolay`
Храни матрицу в одномерном массиве, сохраняя её параметры
ti eto yje kodiroval ?
источник

NK

ID:414983998 in WebAssembly — русскоговорящее сообщество
Andranik Arakelov
export function createMatrix(rows: i32, cols: i32): f64[][] {
  const data: f64[][] = new Array(rows);
  for (let i = 0; i < rows; i++) {
     data[i] = new Array<f64>(cols);
     for (let j = 0; j < cols; j++) {
         data[i][j] = Math.random() * 2 - 1;        
     }
  }    
  return data;    
}
В общем там есть одна особенность связанная с managed объектами. Вот так будет работать:

export function createMatrix(rows: i32, cols: i32): f64[][] {
  const data = new Array<f64[]|null>(rows);
  for (let i = 0; i < rows; i++) {
     data[i] = new Array<f64>(cols);
     for (let j = 0; j < cols; j++) {
       data[i][j] = Math.random() * 2 - 1;
     }
  }    
  return data as f64[][];
}

https://webassembly.studio/?f=v97zqx1s4pc
источник

NK

ID:693357436 in WebAssembly — русскоговорящее сообщество
а нет такой вероятности, что javascript достаточно быстрый для таких задач? Что дело не в штрафах на interop и не в копировании данных
источник