printf("M = %d, N = %d, K = %d\n", M, N, K);
- float * src0 = (float *)malloc(sizeof(float)*M*K);
- float * src1 = (float *)malloc(sizeof(float)*N*K);
- float * dst0 = (float *)malloc(sizeof(float)*M*N); // naive
- float * dst1 = (float *)malloc(sizeof(float)*M*N); // blas
+ float * src0 = malloc(sizeof(float)*M*K);
+ float * src1 = malloc(sizeof(float)*N*K);
+ float * dst0 = malloc(sizeof(float)*M*N); // naive
+ float * dst1 = malloc(sizeof(float)*M*N); // blas
struct ggml_init_params params = {
.mem_size = 2048ul*1024*1024,
}
int main(int argc, const char ** argv) {
- float * src0 = (float *)malloc(sizeof(float)*M*K);
- float * src1 = (float *)malloc(sizeof(float)*N*K);
- float * dst = (float *)malloc(sizeof(float)*M*N);
+ float * src0 = malloc(sizeof(float)*M*K);
+ float * src1 = malloc(sizeof(float)*N*K);
+ float * dst = malloc(sizeof(float)*M*N);
for (int i = 0; i < M*K; i++) {
src0[i] = rand() / (float)RAND_MAX;
method = atoi(argv[1]);
}
- float * src0 = (float *)malloc(sizeof(float)*M*K);
- float * src1 = (float *)malloc(sizeof(float)*N*K);
- float * dst = (float *)malloc(sizeof(float)*M*N);
+ float * src0 = malloc(sizeof(float)*M*K);
+ float * src1 = malloc(sizeof(float)*N*K);
+ float * dst = malloc(sizeof(float)*M*N);
// allocate aligned memory
//float * src0 = (float *)aligned_alloc(32, sizeof(float)*M*K);
int m = 10;
int n = 5;
- float * A = (float *) malloc(n * m * sizeof(float));
- float * A0 = (float *) malloc(n * m * sizeof(float));
+ float * A = malloc(n * m * sizeof(float));
+ float * A0 = malloc(n * m * sizeof(float));
for (int i = 0; i < n; ++i) {
for (int j = 0; j < m; ++j) {
}
// average vector
- //float * M = (float *) malloc(m * sizeof(float));
+ //float * M = malloc(m * sizeof(float));
//{
// for (int j = 0; j < m; ++j) {
// SVD
// A = U * S * V^T
- float * U = (float *) malloc(n * m * sizeof(float));
- float * S = (float *) malloc(n * sizeof(float));
- float * V = (float *) malloc(n * n * sizeof(float));
+ float * U = malloc(n * m * sizeof(float));
+ float * S = malloc(n * sizeof(float));
+ float * V = malloc(n * n * sizeof(float));
int lda = m;
int ldu = m;
printf("work_size = %f, info = %d, lwork = %d\n", work_size, info, lwork);
- float * work = (float *) malloc(lwork * sizeof(float));
+ float * work = malloc(lwork * sizeof(float));
sgesvd_("S", "S", &m, &n, A, &lda, S, U, &ldu, V, &ldvt, work, &lwork, &info);
// project A0 onto U
- float * A1 = (float *) malloc(n * n * sizeof(float));
+ float * A1 = malloc(n * n * sizeof(float));
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
}
int main(int argc, const char ** argv) {
- //float * src0 = (float *)malloc(sizeof(float)*N*M);
- //float * src1 = (float *)malloc(sizeof(float)*M);
- //float * dst = (float *)malloc(sizeof(float)*N);
+ //float * src0 = malloc(sizeof(float)*N*M);
+ //float * src1 = malloc(sizeof(float)*M);
+ //float * dst = malloc(sizeof(float)*N);
afloat * src0 = (float *)(aligned_alloc(32, sizeof(float)*N*M));
afloat * src1 = (float *)(aligned_alloc(32, sizeof(float)*M));
}
int main(int argc, const char ** argv) {
- float * src0 = (float *)malloc(sizeof(float)*N*M);
- float * src1 = (float *)malloc(sizeof(float)*M);
- float * dst = (float *)malloc(sizeof(float)*N);
+ float * src0 = malloc(sizeof(float)*N*M);
+ float * src1 = malloc(sizeof(float)*M);
+ float * dst = malloc(sizeof(float)*N);
//float * src0 = (float *)(aligned_alloc(64, sizeof(float)*N*M));
//float * src1 = (float *)(aligned_alloc(64, sizeof(float)*M));
}
int main(int argc, const char ** argv) {
- float * src0 = (float *)malloc(sizeof(float)*N*M);
- float * src1 = (float *)malloc(sizeof(float)*M);
- float * dst = (float *)malloc(sizeof(float)*N);
+ float * src0 = malloc(sizeof(float)*N*M);
+ float * src1 = malloc(sizeof(float)*M);
+ float * dst = malloc(sizeof(float)*N);
//float * src0 = (float *)(aligned_alloc(64, sizeof(float)*N*M));
//float * src1 = (float *)(aligned_alloc(64, sizeof(float)*M));