Articles of matrix

Эффективные столбцы матрицы доступа

Эффективный вопрос доступа: мне нужно получить доступ к столбцу большой матрицы (более 2000×2000), для моего алгоритма требуется пропуск в 1 строку и 1 столбец. Пропуск строк хорош для эффективности памяти (промаха в кэше), но как уменьшить пропущенность кеша в проходе столбца? Мне нужна эффективность. Единственное, что у меня было, это: объявить n локальную переменную (на […]

CUDA: Плитка с матричным матричным умножением с общей памятью и размером матрицы, которая не кратно размеру блока

Я пытаюсь ознакомиться с программированием CUDA и очень весело провести время. В настоящее время я рассматриваю этот pdf-файл, который касается умножения матриц, выполняемых с использованием и без общей памяти. Полный код для обеих версий можно найти здесь . Этот код почти такой же, как в образцах умножения матрицы CUDA. Несмотря на то, что версия без […]

Ошибка сегментации (сброс ядра) при вычислении умножения матрицы

Я пытаюсь реализовать умножение матрицы в C. Я получаю ошибку ошибки сегментации, если я использую размер матрицы более 3. Для 2×2 матрицы этот код работает отлично. Я пытаюсь выяснить причину этого. Вот мой код. Пожалуйста, взгляните на это и сообщите мне, где я делаю неправильно. #include #include #include /* matrix data structure. rs = row […]

Хэш-функция для матрицы

У меня две матрицы, и мне нужно их сравнить, но я не хочу сравнивать позицию по положению, я думаю, что это не лучший способ. Я думал о hash-функциях, кто-нибудь знает, как вычислить hash матрицы?

Opencl: определение наилучшего local_item_size

Мой код действует как 2d матричная мультипликация ( http://gpgpu-computing4.blogspot.de/2009/09/matrix-multiplication-2-opencl.html ). Размеры матриц (1000 * 1000 и 10000 * 10000 и 100000 * 100000). Мое оборудование: NVIDIA Corporation GM204 [GeForce GTX 980] (MAX_WORK_GROUP_SIZES: 1024 1024 64). Вопрос в том: Каков наилучший local_item_size, я могу использовать? size_t local_item_size[2], global_item_size[2]; global_item_size[0] = number_of_points; global_item_size[1] = number_of_points; local_item_size[0] = […]

Получение значения мусора при печати матрицы в C

Я изучил язык программирования C три года назад, и теперь, когда я пересматриваю его после опыта java и c #, я сталкиваюсь с некоторыми проблемами с указателями. Поэтому я попытался написать простую программу сложения матриц, но я не знаю, почему я получаю некоторые странные значения при печати матриц. Код: #include int* sumOfMat(int* m1,int* m2) { […]

Чтение матрицы 3×3 из файла, а затем ее отображение в C

Я хочу напечатать матрицу, но я не знаю, как это сделать. #include #include #include int main(int argc, char* argv[]) { FILE *input; int i, j; float fullmatrix[3][3]; const char inp_fn[]=”matrix.dat”; /*Open File*/ input = fopen(inp_fn, “r”); if( (input != (FILE*) NULL) ) { for(i=0; i<3; i++) { for(j=0; j<3; j++) { fullmatrix[i][j] = input; } […]

Программа для кодирования зигзагообразной матрицы по вертикали

Я пишу динамический код, который печатает матрицу nxn в шаблоне зигзага. Пожалуйста, помогите мне с кодом, чтобы получить результат, указанный ниже: Код, который я пробовал до сих пор с помощью Rizier123, находится в горизонтальном зигзагообразном шаблоне: #include int main() { int rows, columns; int rowCount, columnCount, count = 0; printf(“Please enter rows and columns:\n>”); scanf(“%d […]

читать матрицу из файла в C C ++

Просто интересно, для матрицы, хранящейся в файле, как то, что она есть, т.е. каждая строка в файле является строкой матрицы, где элементы разделены пробелом (-ами), как я могу предопределить размер матрицы, а затем создать массив одного размера и прочитать его в массиве на C и C ++? Если у вас есть пример кода, это было […]

Как преобразовать 2D-матрицу, сохраненную как массив C 1D

У меня есть двумерная matrix 1 2 3 4 5 6 7 8 9 хранится в C, как это int array[9] = {1,2,3,4,5,6,7,8,9}; и я хотел бы получить транспонирование этой матрицы, как это int array_t[9] = {1,4,7,2,5,8,3,6,9}; без преобразования исходного массива в двумерный. Как это может быть сделано?