Вопросы по теме 'chapel'
Подсчет количества истинных элементов в логическом массиве
В Chapel я могу подсчитать количество элементов массива, равное заданному значению, как
var a = [1,2,5,5,5];
writeln( a.count( 5 ) ); // this gives 3
но аналогичный метод, похоже, не работает для подсчета количества истинных элементов:...
219 просмотров
schedule
15.09.2022
Размещение массивов в Часовне
В отличие от других языков, в Chapel нет синтаксиса allocate или new для выделения массивов в куче, а используется обычный синтаксис, подобный «декларации». Например, в следующем коде я «объявляю» два массива A и B в функции, основанной на...
192 просмотров
schedule
16.08.2022
Как домен сопоставляет индексы сопоставления с целевым массивом локалей в многомерном случае
Я не нашел, как карта домена сопоставляет индексы в многомерных доменах с многомерными целевыми локалями.
1.) Как целевые локали (одно измерение) устроены многомерным образом, который равен измерению распределения для сопоставления индексов?
2.)...
107 просмотров
schedule
05.10.2022
как реплицировать переменные в нескольких локалях в Chapel
Мне интересно, есть ли простой способ сделать копию глобальной переменной для каждой локали, чтобы позже каждая локаль напрямую обращалась к своей локальной копии, а не к исходной переменной, хранящейся в locale0?
Благодарность
159 просмотров
schedule
07.05.2023
Эффективное построение косинусной матрицы подобия из корпуса в Chapel
У меня есть корпус V векторов TF / IDF, поэтому они довольно редкие. Это массив размером примерно 2500 на 150 000. Я хочу вычислить косинусное сходство между каждым документом в корпусе.
Это почти самый наивный способ, который я могу придумать....
238 просмотров
schedule
06.03.2022
Как извлечь верхнюю треугольную матрицу с диагональю или без нее в Chapel
Лучшие истории начинаются с моей матрицы A .
var A: [{1..4,1..4}] real = (
(4, -30, 60, -35),
(-30, 300, -675, 420),
(60, -675, 1620, -1050),
(-35, 420, -1050, 700)
);
Я помню, где-то вы можете получить верхний треугольник, но я не...
27 просмотров
schedule
28.12.2022
Найдите длину массива в Chapel
Я работаю с несколькими языками, поэтому я всегда ищу, как это сделать.
var x = [1,2,3,4];
len(x); // No, python
x.size; // No, javascript?
x.size(); // Still no, uh Java?
x.length(); // Grrr
size(x); // Think that one is C, right?...
144 просмотров
schedule
20.04.2023
Пока цикл в методе застревает. Добавление назначения поля самому себе устраняет проблему
Начиная наш проект Semaphore, я дал своим ученикам плохую версию метода p():
proc p() {
while (this.tokens <= 0) {
sleep(1);
writeln("Tokens: ", this.tokens);
}
this.tokens -= 1;
}
Я даю им дополнительный код...
133 просмотров
schedule
17.02.2024
Как подсчитать итерации в цикле Chapel forall
Я хотел бы знать, сколько раз выполняется цикл при использовании Chapel forall . Этот код, использующий библиотеку CDO , не работает, и я уверен, что это правильно. Может ли кто-нибудь дать мне хороший пример?
var j:int = 0;
writeln("\n===...
157 просмотров
schedule
24.07.2023
Функциональная переменная и массив функций в Chapel
В следующем коде я пытаюсь создать «указатель функции» и массив функций, рассматривая имена функций как обычные переменные:
proc myfunc1() { return 100; }
proc myfunc2() { return 200; }
// a function variable?
var myfunc = myfunc1;
writeln(...
181 просмотров
schedule
25.12.2022
Как прочитать файл построчно в Chapel
Я не вижу примера построчного чтения файла в Часовне Учебник файлового ввода-вывода . Предположим, у меня есть csv data.csv
NAME,RANK,SERIAL_NUMBER
Bootsy Collins,Bassist,8ntNoThing
Chappie,Robot,3.14159
Orange,Flavor,54321
Я хотел бы...
108 просмотров
schedule
02.08.2022
Недопустимое использование поля типа или элемента массива в качестве счетчика цикла
В следующем коде я попытался использовать переменную поля (класса или записи) или элемент массива непосредственно в качестве счетчика цикла, но это было недопустимо ("ошибка: недопустимое выражение индекса"). Это просто потому, что счетчик циклов...
74 просмотров
schedule
30.11.2022
Симуляция n-тел с общей памятью в Chapel
Я пытаюсь повторно реализовать реализацию с общей памятью для симуляции n тел, представленную в главе 6.1.6 в книге Питера Пачеко «Введение в параллельное программирование». В этой главе он был реализован с использованием OpenMP.
Вот моя...
196 просмотров
schedule
27.06.2022
Часовня - Проблемы с мультилокальной конфигурацией подложки GASNET MPI
У меня есть код forall с распределенными итераторами в Chapel, и я пытаюсь запустить его в кластере.
Код отлично работает при использовании канала UDP.
Теперь я пытаюсь использовать портативный MPI в качестве внутреннего слоя - безуспешно....
143 просмотров
schedule
05.08.2022
Эквивалентная функциональность Chapel для функции C fgets
Какой код Chapel эквивалентен функции fgets языка C?
`fgets(buffer, sizeof(buffer), stdin)`
Приведенный выше вызов fgets считывает данные из стандартного ввода до тех пор, пока не встретится символ новой строки. Функция Chapel readln...
47 просмотров
schedule
08.10.2022
Функции обратного вызова в Chapel
У меня есть следующий код часовни.
proc update(x: int(32)) {
return 2*x;
}
proc dynamics(x: int(32)) {
return update(x);
}
writeln(dynamics(7));
Я хотел бы отправить обратный вызов dynamics , например
proc update(x: int(32)) {...
68 просмотров
schedule
05.09.2022