Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions include/infiniop.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
#include "infiniop/ops/atanh.h"
#include "infiniop/ops/attention.h"
#include "infiniop/ops/avg_pool1d.h"
#include "infiniop/ops/avg_pool3d.h"
#include "infiniop/ops/binary_cross_entropy_with_logits.h"
#include "infiniop/ops/block_diag.h"
#include "infiniop/ops/broadcast_to.h"
Expand All @@ -32,6 +33,7 @@
#include "infiniop/ops/diff.h"
#include "infiniop/ops/digamma.h"
#include "infiniop/ops/dist.h"
#include "infiniop/ops/dot.h"
#include "infiniop/ops/embedding.h"
#include "infiniop/ops/equal.h"
#include "infiniop/ops/flash_attention.h"
Expand All @@ -46,6 +48,7 @@
#include "infiniop/ops/hardswish.h"
#include "infiniop/ops/hardtanh.h"
#include "infiniop/ops/hinge_embedding_loss.h"
#include "infiniop/ops/histc.h"
#include "infiniop/ops/huber_loss.h"
#include "infiniop/ops/hypot.h"
#include "infiniop/ops/index_add.h"
Expand All @@ -58,6 +61,8 @@
#include "infiniop/ops/layer_norm.h"
#include "infiniop/ops/ldexp.h"
#include "infiniop/ops/lerp.h"
#include "infiniop/ops/log10.h"
#include "infiniop/ops/log1p.h"
#include "infiniop/ops/log_softmax.h"
#include "infiniop/ops/logaddexp.h"
#include "infiniop/ops/logaddexp2.h"
Expand Down
27 changes: 27 additions & 0 deletions include/infiniop/ops/avg_pool3d.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#ifndef __INFINIOP_AVG_POOL3D_API_H__
#define __INFINIOP_AVG_POOL3D_API_H__

#include "../operator_descriptor.h"

typedef struct InfiniopDescriptor *infiniopAvgPool3dDescriptor_t;

__INFINI_C __export infiniStatus_t infiniopCreateAvgPool3dDescriptor(infiniopHandle_t handle,
infiniopAvgPool3dDescriptor_t *desc_ptr,
infiniopTensorDescriptor_t y,
infiniopTensorDescriptor_t x,
void *kernel_size,
void *stride,
void *padding);

__INFINI_C __export infiniStatus_t infiniopGetAvgPool3dWorkspaceSize(infiniopAvgPool3dDescriptor_t desc, size_t *size);

__INFINI_C __export infiniStatus_t infiniopAvgPool3d(infiniopAvgPool3dDescriptor_t desc,
void *workspace,
size_t workspace_size,
void *y,
const void *x,
void *stream);

__INFINI_C __export infiniStatus_t infiniopDestroyAvgPool3dDescriptor(infiniopAvgPool3dDescriptor_t desc);

#endif
26 changes: 26 additions & 0 deletions include/infiniop/ops/dot.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#ifndef __INFINIOP_DOT_API_H__
#define __INFINIOP_DOT_API_H__

#include "../operator_descriptor.h"

typedef struct InfiniopDescriptor *infiniopDotDescriptor_t;

__INFINI_C __export infiniStatus_t infiniopCreateDotDescriptor(infiniopHandle_t handle,
infiniopDotDescriptor_t *desc_ptr,
infiniopTensorDescriptor_t y,
infiniopTensorDescriptor_t a,
infiniopTensorDescriptor_t b);

__INFINI_C __export infiniStatus_t infiniopGetDotWorkspaceSize(infiniopDotDescriptor_t desc, size_t *size);

__INFINI_C __export infiniStatus_t infiniopDot(infiniopDotDescriptor_t desc,
void *workspace,
size_t workspace_size,
void *y,
const void *a,
const void *b,
void *stream);

__INFINI_C __export infiniStatus_t infiniopDestroyDotDescriptor(infiniopDotDescriptor_t desc);

#endif
28 changes: 28 additions & 0 deletions include/infiniop/ops/histc.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
#ifndef __INFINIOP_HISTC_API_H__
#define __INFINIOP_HISTC_API_H__

#include "../operator_descriptor.h"
#include <stdint.h>

typedef struct InfiniopDescriptor *infiniopHistcDescriptor_t;

__INFINI_C __export infiniStatus_t infiniopCreateHistcDescriptor(infiniopHandle_t handle,
infiniopHistcDescriptor_t *desc_ptr,
infiniopTensorDescriptor_t y,
infiniopTensorDescriptor_t x,
int64_t bins,
double min_val,
double max_val);

__INFINI_C __export infiniStatus_t infiniopGetHistcWorkspaceSize(infiniopHistcDescriptor_t desc, size_t *size);

__INFINI_C __export infiniStatus_t infiniopHistc(infiniopHistcDescriptor_t desc,
void *workspace,
size_t workspace_size,
void *y,
const void *x,
void *stream);

__INFINI_C __export infiniStatus_t infiniopDestroyHistcDescriptor(infiniopHistcDescriptor_t desc);

#endif
24 changes: 24 additions & 0 deletions include/infiniop/ops/log10.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#ifndef __INFINIOP_LOG10_API_H__
#define __INFINIOP_LOG10_API_H__

#include "../operator_descriptor.h"

typedef struct InfiniopDescriptor *infiniopLog10Descriptor_t;

__INFINI_C __export infiniStatus_t infiniopCreateLog10Descriptor(infiniopHandle_t handle,
infiniopLog10Descriptor_t *desc_ptr,
infiniopTensorDescriptor_t y,
infiniopTensorDescriptor_t x);

__INFINI_C __export infiniStatus_t infiniopGetLog10WorkspaceSize(infiniopLog10Descriptor_t desc, size_t *size);

__INFINI_C __export infiniStatus_t infiniopLog10(infiniopLog10Descriptor_t desc,
void *workspace,
size_t workspace_size,
void *y,
const void *x,
void *stream);

__INFINI_C __export infiniStatus_t infiniopDestroyLog10Descriptor(infiniopLog10Descriptor_t desc);

#endif
24 changes: 24 additions & 0 deletions include/infiniop/ops/log1p.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#ifndef __INFINIOP_LOG1P_API_H__
#define __INFINIOP_LOG1P_API_H__

#include "../operator_descriptor.h"

typedef struct InfiniopDescriptor *infiniopLog1pDescriptor_t;

__INFINI_C __export infiniStatus_t infiniopCreateLog1pDescriptor(infiniopHandle_t handle,
infiniopLog1pDescriptor_t *desc_ptr,
infiniopTensorDescriptor_t y,
infiniopTensorDescriptor_t x);

__INFINI_C __export infiniStatus_t infiniopGetLog1pWorkspaceSize(infiniopLog1pDescriptor_t desc, size_t *size);

__INFINI_C __export infiniStatus_t infiniopLog1p(infiniopLog1pDescriptor_t desc,
void *workspace,
size_t workspace_size,
void *y,
const void *x,
void *stream);

__INFINI_C __export infiniStatus_t infiniopDestroyLog1pDescriptor(infiniopLog1pDescriptor_t desc);

#endif
1 change: 1 addition & 0 deletions src/infiniop/devices/metax/metax_common.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
#pragma once
#include "../../../utils.h"
#include "../pool.h"
#include "metax_handle.h"
Expand Down
2 changes: 2 additions & 0 deletions src/infiniop/devices/metax/metax_ht2mc.h
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,10 @@
#define hcdnnTensorDescriptor_t mcdnnTensorDescriptor_t
#define hcdnnStatus_t mcdnnStatus_t
#define hcdnnSetTensor4dDescriptor mcdnnSetTensor4dDescriptor
#define hcdnnSetTensorNdDescriptor mcdnnSetTensorNdDescriptor
#define hcdnnSetStream mcdnnSetStream
#define hcdnnSetPooling2dDescriptor mcdnnSetPooling2dDescriptor
#define hcdnnSetPoolingNdDescriptor mcdnnSetPoolingNdDescriptor
#define hcdnnPoolingMode_t mcdnnPoolingMode_t
#define hcdnnPoolingForward mcdnnPoolingForward
#define hcdnnPoolingDescriptor_t mcdnnPoolingDescriptor_t
Expand Down
1 change: 1 addition & 0 deletions src/infiniop/devices/metax/metax_kernel_common.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
#pragma once
#define INFINIOP_METAX_KERNEL __global__ void

#ifdef ENABLE_METAX_MC_API
Expand Down
3 changes: 3 additions & 0 deletions src/infiniop/devices/moore/moore_common.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#ifndef __INFINIOP_MOORE_COMMON_H__
#define __INFINIOP_MOORE_COMMON_H__
#include "../../../utils.h"
#include "../pool.h"
#include "moore_handle.h"
Expand Down Expand Up @@ -42,3 +44,4 @@ class Handle::Internal {
};

} // namespace device::moore
#endif
3 changes: 3 additions & 0 deletions src/infiniop/devices/moore/moore_kernel_common.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
#ifndef __INFINIOP_MOORE_KERNEL_COMMON_H__
#define __INFINIOP_MOORE_KERNEL_COMMON_H__
#define INFINIOP_MOORE_KERNEL __global__ void

#include <musa_bf16.h>
Expand Down Expand Up @@ -72,3 +74,4 @@ exp_(const __mt_bfloat16 x) {
float f_result = expf(f_val);
return __float2bfloat16(f_result);
}
#endif
Loading
Loading