"superbench/vscode:/vscode.git/clone" did not exist on "67f2aa7237cefb0cf5b3032c8510a6b432407329"
Commit 025894f3 authored by PanZezhong's avatar PanZezhong
Browse files

issue/48/fix 将rope info的workspace_size改成私有

parent c905fd63
...@@ -73,9 +73,9 @@ __C infiniStatus_t infiniopCreateRoPEDescriptor( ...@@ -73,9 +73,9 @@ __C infiniStatus_t infiniopCreateRoPEDescriptor(
__C infiniStatus_t infiniopGetRoPEWorkspaceSize(infiniopRoPEDescriptor_t desc, __C infiniStatus_t infiniopGetRoPEWorkspaceSize(infiniopRoPEDescriptor_t desc,
size_t *size) { size_t *size) {
#define GET(CASE, NAMESPACE) \ #define GET(CASE, NAMESPACE) \
case CASE: \ case CASE: \
*size = reinterpret_cast<const op::rope::NAMESPACE::Descriptor *>(desc)->workspace_size; \ *size = reinterpret_cast<const op::rope::NAMESPACE::Descriptor *>(desc)->workspaceSize(); \
return INFINI_STATUS_SUCCESS return INFINI_STATUS_SUCCESS
switch (desc->device_type) { switch (desc->device_type) {
......
...@@ -5,49 +5,50 @@ ...@@ -5,49 +5,50 @@
#include "../../operator.h" #include "../../operator.h"
#include "../../tensor.h" #include "../../tensor.h"
#define DESCRIPTOR(NAMESPACE) \ #define DESCRIPTOR(NAMESPACE) \
\ \
namespace op::rope::NAMESPACE { \ namespace op::rope::NAMESPACE { \
class Descriptor final : public InfiniopDescriptor { \ class Descriptor final : public InfiniopDescriptor { \
struct Opaque; \ struct Opaque; \
Opaque *_opaque; \ Opaque *_opaque; \
RoPEInfo _info; \ RoPEInfo _info; \
\ size_t _workspace_size; \
Descriptor( \ \
RoPEInfo info, \ Descriptor( \
size_t workspace_size_, \ RoPEInfo info, \
Opaque *opaque, \ size_t workspace_size_, \
infiniDevice_t device_type, \ Opaque *opaque, \
int device_id) \ infiniDevice_t device_type, \
: InfiniopDescriptor{device_type, device_id}, \ int device_id) \
_opaque(opaque), \ : InfiniopDescriptor{device_type, device_id}, \
_info(info), \ _opaque(opaque), \
workspace_size(workspace_size_) {} \ _info(info), \
\ _workspace_size(workspace_size_) {} \
public: \ \
size_t workspace_size; \ public: \
\ ~Descriptor(); \
~Descriptor(); \ \
\ size_t workspaceSize() const { return _workspace_size; } \
static infiniStatus_t create( \ \
infiniopHandle_t handle, \ static infiniStatus_t create( \
Descriptor **desc_ptr, \ infiniopHandle_t handle, \
infiniopTensorDescriptor_t y_desc, \ Descriptor **desc_ptr, \
infiniopTensorDescriptor_t x_desc, \ infiniopTensorDescriptor_t y_desc, \
infiniopTensorDescriptor_t pos_desc, \ infiniopTensorDescriptor_t x_desc, \
infiniopTensorDescriptor_t sin_desc, \ infiniopTensorDescriptor_t pos_desc, \
infiniopTensorDescriptor_t cos_desc); \ infiniopTensorDescriptor_t sin_desc, \
\ infiniopTensorDescriptor_t cos_desc); \
infiniStatus_t calculate( \ \
void *workspace, \ infiniStatus_t calculate( \
size_t workspace_size, \ void *workspace, \
void *y, \ size_t workspace_size, \
const void *x, \ void *y, \
const void *pos_ids, \ const void *x, \
const void *sin_table, \ const void *pos_ids, \
const void *cos_table, \ const void *sin_table, \
void *stream) const; \ const void *cos_table, \
}; \ void *stream) const; \
}; \
} }
class RoPEInfo { class RoPEInfo {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment