Скалярный продукт C++ против PythonPython

Программы на Python
Anonymous
 Скалярный продукт C++ против Python

Сообщение Anonymous »

Я пишу код, который должен выполнять скалярное произведение между вектором b и матрицей C, где точка выполняется между b и каждой строкой C.
Я сделал две реализации: одну на C++ и одну на Python. Последний работает лучше: я хотел бы получить ту же скорость в C++.
Однако есть одно ограничение: никакое улучшение не может быть сделано в способе хранения данных, а только в способе выполнения вычислений.
Код C++ следующий:

Код: Выделить всё

#include 
#include 
#include 
#include 
#include 

using namespace std;
using namespace std::chrono;

int main() {

size_t jmax = 700;
size_t kmax = 100000;

vector C(jmax + 1, vector(kmax));
vector b(jmax + 1);

random_device rd;
mt19937 gen(rd());
uniform_real_distribution dist_b(5.0, 10.0);
uniform_real_distribution dist_C(-1.0, 1.0);

// fake b and C
for (size_t j = 0; j 

Подробнее здесь: [url]https://stackoverflow.com/questions/79798652/scalar-product-c-vs-python[/url]

Вернуться в «Python»