autonomys/sloth256-189

Windows Farmer Errors in log gemini-1b-2022-jun-18

gddrx opened this issue · 7 comments

gddrx commented

At clean start on Windows mashine.

PS E:\bin> .\subspace-farmer-windows-x86_64-gemini-1b-2022-jun-18.exe --base-path E:\bin\subspace-farmer farm --reward-address st78r4V4hqLAfQVxtBD8yeKEPzMrj9STrR9xrJ7ZT7BfjDfhn --plot-size 500G --node-rpc-url ws://176.105.112.73:30335
←[2m2022-06-18T11:27:46.521424Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::commands::farm←[0m←[2m:←[0m Connecting to node at ws://176.105.112.73:30335
←[2m2022-06-18T11:27:46.543283Z←[0m ←[32m INFO←[0m ←[2mjsonrpsee_client_transport::ws←[0m←[2m:←[0m Connection established to target: Target { sockaddrs: [], host: "176.105.112.73", host_header: "176.105.112.73:30335", _mode: Plain, path_and_query: "/" }
←[2m2022-06-18T11:27:46.567081Z←[0m ←[32m INFO←[0m ←[2mjsonrpsee_client_transport::ws←[0m←[2m:←[0m Connection established to target: Target { sockaddrs: [], host: "176.105.112.73", host_header: "176.105.112.73:30335", _mode: Plain, path_and_query: "/" }
←[2m2022-06-18T11:27:46.593469Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::commands::farm←[0m←[2m:←[0m Opening object mapping
←[2m2022-06-18T11:27:46.651794Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening plot
←[2m2022-06-18T11:27:46.651876Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening plot
←[2m2022-06-18T11:27:46.652515Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening plot
←[2m2022-06-18T11:27:46.652645Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening plot
←[2m2022-06-18T11:27:46.709587Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening commitments
←[2m2022-06-18T11:27:46.709620Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening commitments
←[2m2022-06-18T11:27:46.709666Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening commitments
←[2m2022-06-18T11:27:46.709962Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::multi_farming←[0m←[2m:←[0m Opening commitments
←[2m2022-06-18T11:27:46.833594Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::farming←[0m←[2m:←[0m Subscribing to slot info notifications
←[2m2022-06-18T11:27:46.857839Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::farming←[0m←[2m:←[0m Subscribing to slot info notifications
←[2m2022-06-18T11:27:46.859758Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::farming←[0m←[2m:←[0m Subscribing to slot info notifications
←[2m2022-06-18T11:27:46.859847Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::farming←[0m←[2m:←[0m Subscribing to slot info notifications

Error while building OpenCL program:
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:153:5: error: implicit declaration of function '__asm__' is invalid in C99
    __asm__("v_mul_lo_u32 %0, %1, %2"
    ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:154:18: error: expected ')'
                 : "=v"(z.w[0]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:153:12: note: to match this '('
    __asm__("v_mul_lo_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:156:18: error: expected ')'
                 : "=v"(z.w[1]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:155:12: note: to match this '('
    __asm__("v_mul_hi_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:160:12: error: overloaded function 'mad' must have the 'overloadable' attribute
inline u64 mad(u64 z, u32 x, u32 y)
           ^
c:\constructicon\builds\gfx\seven\20.10\stream\opencl\compiler\clc2\ocl-headers\build\wNow64a\B_rel\opencl12_builtins.h:11680:49: note: previous overload of function is here
half16 const_func __attribute__((overloadable)) mad(half16 a, half16 b, half16 c);
                                                ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:165:18: error: expected ')'
                 : "+v" (z), "=s" (junk) : "v" (x), "v" (y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:164:12: note: to match this '('
    __asm__("v_mad_u64_u32 %0, %1, %2, %3, %0"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T0.cl:520:21: warning: initializing '__global uchar *' (aka '__global unsigned char *') with an expression of type 'const __global uchar *' (aka 'const __global unsigned char *') discards qualifiers
    __global uchar* iv = _iv + x * 32;
                    ^    ~~~~~~~~~~~~
1 warning and 5 errors generated.

error: Clang front-end compilation failed!
Frontend phase failed compilation.
Error: Compiling CL to IR


Error while building OpenCL program:
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:153:5: error: implicit declaration of function '__asm__' is invalid in C99
    __asm__("v_mul_lo_u32 %0, %1, %2"
    ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:154:18: error: expected ')'
                 : "=v"(z.w[0]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:153:12: note: to match this '('
    __asm__("v_mul_lo_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:156:18: error: expected ')'
                 : "=v"(z.w[1]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:155:12: note: to match this '('
    __asm__("v_mul_hi_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:160:12: error: overloaded function 'mad' must have the 'overloadable' attribute
inline u64 mad(u64 z, u32 x, u32 y)
           ^
c:\constructicon\builds\gfx\seven\20.10\stream\opencl\compiler\clc2\ocl-headers\build\wNow64a\B_rel\opencl12_builtins.h:11680:49: note: previous overload of function is here
half16 const_func __attribute__((overloadable)) mad(half16 a, half16 b, half16 c);
                                                ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:165:18: error: expected ')'
                 : "+v" (z), "=s" (junk) : "v" (x), "v" (y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:164:12: note: to match this '('
    __asm__("v_mad_u64_u32 %0, %1, %2, %3, %0"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T1.cl:520:21: warning: initializing '__global uchar *' (aka '__global unsigned char *') with an expression of type 'const __global uchar *' (aka 'const __global unsigned char *') discards qualifiers
    __global uchar* iv = _iv + x * 32;
                    ^    ~~~~~~~~~~~~
1 warning and 5 errors generated.

error: Clang front-end compilation failed!
Frontend phase failed compilation.
Error: Compiling CL to IR


Error while building OpenCL program:
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:153:5: error: implicit declaration of function '__asm__' is invalid in C99
    __asm__("v_mul_lo_u32 %0, %1, %2"
    ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:154:18: error: expected ')'
                 : "=v"(z.w[0]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:153:12: note: to match this '('
    __asm__("v_mul_lo_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:156:18: error: expected ')'
                 : "=v"(z.w[1]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:155:12: note: to match this '('
    __asm__("v_mul_hi_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:160:12: error: overloaded function 'mad' must have the 'overloadable' attribute
inline u64 mad(u64 z, u32 x, u32 y)
           ^
c:\constructicon\builds\gfx\seven\20.10\stream\opencl\compiler\clc2\ocl-headers\build\wNow64a\B_rel\opencl12_builtins.h:11680:49: note: previous overload of function is here
half16 const_func __attribute__((overloadable)) mad(half16 a, half16 b, half16 c);
                                                ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:165:18: error: expected ')'
                 : "+v" (z), "=s" (junk) : "v" (x), "v" (y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:164:12: note: to match this '('
    __asm__("v_mad_u64_u32 %0, %1, %2, %3, %0"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T2.cl:520:21: warning: initializing '__global uchar *' (aka '__global unsigned char *') with an expression of type 'const __global uchar *' (aka 'const __global unsigned char *') discards qualifiers
    __global uchar* iv = _iv + x * 32;
                    ^    ~~~~~~~~~~~~
1 warning and 5 errors generated.

error: Clang front-end compilation failed!
Frontend phase failed compilation.
Error: Compiling CL to IR


Error while building OpenCL program:
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:153:5: error: implicit declaration of function '__asm__' is invalid in C99
    __asm__("v_mul_lo_u32 %0, %1, %2"
    ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:154:18: error: expected ')'
                 : "=v"(z.w[0]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:153:12: note: to match this '('
    __asm__("v_mul_lo_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:156:18: error: expected ')'
                 : "=v"(z.w[1]) : "v"(x), "v"(y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:155:12: note: to match this '('
    __asm__("v_mul_hi_u32 %0, %1, %2"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:160:12: error: overloaded function 'mad' must have the 'overloadable' attribute
inline u64 mad(u64 z, u32 x, u32 y)
           ^
c:\constructicon\builds\gfx\seven\20.10\stream\opencl\compiler\clc2\ocl-headers\build\wNow64a\B_rel\opencl12_builtins.h:11680:49: note: previous overload of function is here
half16 const_func __attribute__((overloadable)) mad(half16 a, half16 b, half16 c);
                                                ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:165:18: error: expected ')'
                 : "+v" (z), "=s" (junk) : "v" (x), "v" (y));
                 ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:164:12: note: to match this '('
    __asm__("v_mad_u64_u32 %0, %1, %2, %3, %0"
           ^
C:\Users\xxxx\AppData\Local\Temp\\OCL16032T3.cl:520:21: warning: initializing '__global uchar *' (aka '__global unsigned char *') with an expression of type 'const __global uchar *' (aka 'const __global unsigned char *') discards qualifiers
    __global uchar* iv = _iv + x * 32;
                    ^    ~~~~~~~~~~~~
1 warning and 5 errors generated.

error: Clang front-end compilation failed!
Frontend phase failed compilation.
Error: Compiling CL to IR

←[2m2022-06-18T11:27:49.417846Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::archiving←[0m←[2m:←[0m Subscribing to archived segments
←[2m2022-06-18T11:27:49.435870Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::commands::farm←[0m←[2m:←[0m WS RPC server listening on 127.0.0.1:9955
←[2m2022-06-18T11:27:52.023345Z←[0m ←[32m INFO←[0m ←[2msubspace_farmer::archiving←[0m←[2m:←[0m Plotted segment ←[3msegment_index←[0m←[2m=←[0m0

Does application crash from this or continues?

Also which Windows version and which GPU do you have?

gddrx commented

1 - Waiting sync process... for farmer make plots to check....

2 - I have integrated GPU in CPU (AMD Ryzen 7 4800U) and discreete NVidia RTX 2060.
(Notebook) / Windows 10 Pro 21H1 19043.1706 (farmer). But node deployed on Linux)

Not sure what response to 1 means. Does it crash or just writes those logs, but works fine?

It is not recommended for node and farmer to be on separate machines, it will not work properly.

gddrx commented

Not sure what response to 1 means. Does it crash or just writes those logs, but works fine?

Farmer works. (i wait some time to node start sync...).

So ignore this errors at farmer start ?

Yes, it tries to use GPU, but apparently fails and switches back to CPU automatically.
We will look into it though, thanks for reporting!

Found a similar issue in hashcat/hashcat#1423.

Looks like the code we use expects ROCm, which isn't a thing natively on Windows.

I think we should:

  • skip unsupported devices while being able to use supported ones; I did such patches in some places, but not when compiling kernel
  • figure out if we can make it compile, even if ending up with lower performance, on AMD GPUs without ROCm

Either way, nothing to be done in this repo, moving into sloth256-189 instead.