Open LANSHANGH opened 1 month ago
please show your complete cmake config command you are using and provide more details about your system environment you are building on
The cmake command I use is the Initial build steps in quickstart.md.
`$ export CUDACXX=${CUDA_INSTALL_PATH}/bin/nvcc
$ mkdir build && cd build
$ cmake .. -DCUTLASS_NVCC_ARCHS=75 # compiles for NVIDIA Hopper GPU architecture`
This issue has been labeled inactive-30d
due to no recent activity in the past 30 days. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed. This issue will be labeled inactive-90d
if there is no activity in the next 60 days.
Describe the bug /usr/bin/ld: /tmp/tmpxft_0000b975_00000000-11_single_file.o: in function
main': tmpxft_0000b975_00000000-6_single_file.cudafe1.cpp:(.text+0x594): undefined reference to
cutlass::library::Handle::Handle(CUstream_st, unsigned long)' /usr/bin/ld: tmpxft_0000b975_00000000-6_single_file.cudafe1.cpp:(.text+0x627): undefined reference to `cutlass::library::Handle::gemm(int, int, int, cutlass::library::NumericTypeID, cutlass::library::NumericTypeID, void const, cutlass::library::NumericTypeID, cutlass::library::LayoutTypeID, cutlass::library::ComplexTransform, void const, long, cutlass::library::NumericTypeID, cutlass::library::LayoutTypeID, cutlass::library::ComplexTransform, void const, long, void const, cutlass::library::NumericTypeID, void const, long, void*, long)' /usr/bin/ld: tmpxft_0000b975_00000000-6_single_file.cudafe1.cpp:(.text+0x658): undefined reference tocutlass::library::Handle::~Handle()' /usr/bin/ld: tmpxft_0000b975_00000000-6_single_file.cudafe1.cpp:(.text+0x6c4): undefined reference to
cutlass::library::Handle::~Handle()' collect2: error: ld returned 1 exit statusSteps/Code to reproduce bug
include "cutlass/library/library.h"
include "cutlass/library/handle.h"
include <cutlass/util/host_tensor.h>
int main() {
// // Define the problem size // int M = 512; int N = 256; int K = 128;
float alpha = 1.25f; float beta = -1.25f;
// // Allocate device memory //
cutlass::HostTensor<float, cutlass::layout::ColumnMajor> A({M, K}); cutlass::HostTensor<float, cutlass::layout::ColumnMajor> B({K, N}); cutlass::HostTensor<float, cutlass::layout::ColumnMajor> C({M, N}); cutlass::HostTensor<float, cutlass::layout::ColumnMajor> D({M, N});
float const ptrA = A.device_data(); float const ptrB = B.device_data(); float const ptrC = C.device_data(); float ptrD = C.device_data();
int lda = A.device_ref().stride(0); int ldb = B.device_ref().stride(0); int ldc = C.device_ref().stride(0); int ldd = D.device_ref().stride(0);
// // CUTLASS Library call to execute device GEMM //
// // Launch GEMM on CUDA device. //
cutlass::Status status = handle.gemm( M, N, K,
);
if (status != cutlass::Status::kSuccess) { return -1; }
return 0; } Expected behavior When I was using the CUTLASS Library following the Quick Start documentation, I encountered this problem when compiling its examples as instructed
Environment details (please complete the following information): compiler-args " -I/content/cutlass/include -I/content/cutlass/tools/library/include -I/content/cutlass/tools/util/include --expt-relaxed-constexpr"
Additional context I looked up the information and found that there was a problem in the linking process, but I don't know how to solve it. Could you please help me