Created
November 5, 2025 22:00
-
-
Save Hermann-SW/1d0b7f84610e1aee657ab1cad8e09460 to your computer and use it in GitHub Desktop.
Simple stacking model allowing AMD Instinct MI50 GPUs to be operated by Riser cards from side
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| "use strict" | |
| const jscad = require('@jscad/modeling') | |
| const { intersect, subtract, union } = jscad.booleans | |
| const { translate } = jscad.transforms | |
| const { cuboid } = jscad.primitives | |
| const L=112 | |
| const H=41+12 | |
| const W=10 | |
| const T=5 | |
| const D=20 | |
| const w=3 | |
| const t=2.5 | |
| const d=8 | |
| function main() { | |
| return [ | |
| subtract( | |
| union( | |
| translate([0,0,10/2], cuboid({size: [L+2*W,D,T+10]})), | |
| translate([L/2+W/2,0,(T+H)/2-T/2], cuboid({size: [W,2*D,T+H]})), | |
| translate([-(L/2+W/2),0,(T+H)/2-T/2], cuboid({size: [W,2*D,T+H]})), | |
| translate([(L+W)/2,0,T+H-t/2], cuboid({size: [w,d,t]})), | |
| translate([-(L+W)/2,0,T+H-t/2], cuboid({size: [w,d,t]})), | |
| ), | |
| translate([(L+W)/2,0,-T/2+t/2], cuboid({size: [w+0.3,d+0.3,t+0.3]})), | |
| translate([-(L+W)/2,0,-T/2+t/2], cuboid({size: [w+0.3,d+0.3,t+0.3]})), | |
| ) | |
| ] | |
| } | |
| module.exports = { main } |
Author
Author
Function test with gpuowl benchmark:
| GPU UUID | us/iter (*) | ID | VRAM[GB] |
|---|---|---|---|
| 4124412172e62126 | 537 | 0 | 32 |
| c49e19417337ece3 | 529 | 1 | 16 |
| 6a0e7961732c730d | 530 | 2 | 16 |
| 13c24061732c730c | 530 | 3 | 16 |
| 304c70e172dc768c | 514 | 4 | 16 |
| 6e56508172dc76b6 | 514 | 5 | 16 |
| d64a58a17330f0ed | 529 | 6 | 16 |
| f890794172e62691 | 531 | 7 | 16 |
hermann@7600x:~$ cd gpuowl-v7.2-131-gca22dce-ubuntu/
hermann@7600x:~/gpuowl-v7.2-131-gca22dce-ubuntu$ for((d=0;d<8;++d)); do rm -rf 77* && ./gpuowl -prp 77936867 -iters 30000 -log 10000 -fft 4M -d $d; echo "================================================"; done
20251112 20:58:39 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:58:39 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:58:39 Note: not found 'config.txt'
20251112 20:58:39 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 0
20251112 20:58:39 device 0, unique id '4124412172e62126'
20251112 20:58:39 4124412172e62126 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 20:58:39 4124412172e62126 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 20:58:40 4124412172e62126 77936867 OpenCL compilation in 0.79 s
20251112 20:58:40 4124412172e62126 77936867 PRP starting from beginning
20251112 20:58:40 4124412172e62126 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 20:58:40 4124412172e62126 77936867 validating proof residues for power 8
20251112 20:58:40 4124412172e62126 77936867 Proof using power 8
20251112 20:58:46 4124412172e62126 77936867 OK 10000 0.01% fc4f135f7cf4ad29 535 us/it + check 0.27s + save 0.09s; ETA 11:35
20251112 20:58:52 4124412172e62126 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 537 us/it + check 0.27s + save 0.09s; ETA 11:37
20251112 20:58:57 4124412172e62126 77936867 Stopping, please wait..
20251112 20:58:58 4124412172e62126 77936867 OK 30000 0.04% c4e0ff35e3290d98 537 us/it + check 0.27s + save 0.09s; ETA 11:37
20251112 20:58:58 4124412172e62126 Exiting because "stop requested"
20251112 20:58:58 4124412172e62126 Bye
================================================
20251112 20:58:58 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:58:58 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:58:58 Note: not found 'config.txt'
20251112 20:58:58 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 1
20251112 20:58:58 device 1, unique id 'c49e19417337ece3'
20251112 20:58:58 c49e19417337ece3 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 20:58:58 c49e19417337ece3 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 20:58:58 c49e19417337ece3 77936867 OpenCL compilation in 0.78 s
20251112 20:58:59 c49e19417337ece3 77936867 PRP starting from beginning
20251112 20:58:59 c49e19417337ece3 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 20:58:59 c49e19417337ece3 77936867 validating proof residues for power 8
20251112 20:58:59 c49e19417337ece3 77936867 Proof using power 8
20251112 20:59:05 c49e19417337ece3 77936867 OK 10000 0.01% fc4f135f7cf4ad29 529 us/it + check 0.28s + save 0.09s; ETA 11:27
20251112 20:59:10 c49e19417337ece3 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 529 us/it + check 0.28s + save 0.08s; ETA 11:28
20251112 20:59:16 c49e19417337ece3 77936867 Stopping, please wait..
20251112 20:59:16 c49e19417337ece3 77936867 OK 30000 0.04% c4e0ff35e3290d98 529 us/it + check 0.28s + save 0.09s; ETA 11:27
20251112 20:59:16 c49e19417337ece3 Exiting because "stop requested"
20251112 20:59:16 c49e19417337ece3 Bye
================================================
20251112 20:59:16 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:59:16 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:59:16 Note: not found 'config.txt'
20251112 20:59:16 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 2
20251112 20:59:16 device 2, unique id '6a0e7961732c730d'
20251112 20:59:16 6a0e7961732c730d 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 20:59:16 6a0e7961732c730d 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 20:59:17 6a0e7961732c730d 77936867 OpenCL compilation in 0.78 s
20251112 20:59:17 6a0e7961732c730d 77936867 PRP starting from beginning
20251112 20:59:17 6a0e7961732c730d 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 20:59:17 6a0e7961732c730d 77936867 validating proof residues for power 8
20251112 20:59:17 6a0e7961732c730d 77936867 Proof using power 8
20251112 20:59:23 6a0e7961732c730d 77936867 OK 10000 0.01% fc4f135f7cf4ad29 528 us/it + check 0.28s + save 0.09s; ETA 11:26
20251112 20:59:29 6a0e7961732c730d 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 530 us/it + check 0.28s + save 0.08s; ETA 11:28
20251112 20:59:34 6a0e7961732c730d 77936867 Stopping, please wait..
20251112 20:59:34 6a0e7961732c730d 77936867 OK 30000 0.04% c4e0ff35e3290d98 530 us/it + check 0.28s + save 0.08s; ETA 11:28
20251112 20:59:34 6a0e7961732c730d Exiting because "stop requested"
20251112 20:59:34 6a0e7961732c730d Bye
================================================
20251112 20:59:34 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:59:34 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:59:34 Note: not found 'config.txt'
20251112 20:59:34 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 3
20251112 20:59:34 device 3, unique id '13c24061732c730c'
20251112 20:59:34 13c24061732c730c 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 20:59:34 13c24061732c730c 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 20:59:35 13c24061732c730c 77936867 OpenCL compilation in 0.78 s
20251112 20:59:35 13c24061732c730c 77936867 PRP starting from beginning
20251112 20:59:36 13c24061732c730c 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 20:59:36 13c24061732c730c 77936867 validating proof residues for power 8
20251112 20:59:36 13c24061732c730c 77936867 Proof using power 8
20251112 20:59:41 13c24061732c730c 77936867 OK 10000 0.01% fc4f135f7cf4ad29 529 us/it + check 0.28s + save 0.09s; ETA 11:28
20251112 20:59:47 13c24061732c730c 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 530 us/it + check 0.28s + save 0.09s; ETA 11:29
20251112 20:59:52 13c24061732c730c 77936867 Stopping, please wait..
20251112 20:59:53 13c24061732c730c 77936867 OK 30000 0.04% c4e0ff35e3290d98 530 us/it + check 0.29s + save 0.09s; ETA 11:29
20251112 20:59:53 13c24061732c730c Exiting because "stop requested"
20251112 20:59:53 13c24061732c730c Bye
================================================
20251112 20:59:53 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:59:53 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 20:59:53 Note: not found 'config.txt'
20251112 20:59:53 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 4
20251112 20:59:53 device 4, unique id '304c70e172dc768c'
20251112 20:59:53 304c70e172dc768c 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 20:59:53 304c70e172dc768c 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 20:59:54 304c70e172dc768c 77936867 OpenCL compilation in 0.78 s
20251112 20:59:54 304c70e172dc768c 77936867 PRP starting from beginning
20251112 20:59:54 304c70e172dc768c 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 20:59:54 304c70e172dc768c 77936867 validating proof residues for power 8
20251112 20:59:54 304c70e172dc768c 77936867 Proof using power 8
20251112 21:00:00 304c70e172dc768c 77936867 OK 10000 0.01% fc4f135f7cf4ad29 514 us/it + check 0.28s + save 0.09s; ETA 11:08
20251112 21:00:05 304c70e172dc768c 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 515 us/it + check 0.28s + save 0.09s; ETA 11:08
20251112 21:00:10 304c70e172dc768c 77936867 Stopping, please wait..
20251112 21:00:11 304c70e172dc768c 77936867 OK 30000 0.04% c4e0ff35e3290d98 514 us/it + check 0.28s + save 0.08s; ETA 11:08
20251112 21:00:11 304c70e172dc768c Exiting because "stop requested"
20251112 21:00:11 304c70e172dc768c Bye
================================================
20251112 21:00:11 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 21:00:11 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 21:00:11 Note: not found 'config.txt'
20251112 21:00:11 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 5
20251112 21:00:11 device 5, unique id '6e56508172dc76b6'
20251112 21:00:11 6e56508172dc76b6 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 21:00:11 6e56508172dc76b6 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 21:00:12 6e56508172dc76b6 77936867 OpenCL compilation in 0.78 s
20251112 21:00:12 6e56508172dc76b6 77936867 PRP starting from beginning
20251112 21:00:12 6e56508172dc76b6 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 21:00:12 6e56508172dc76b6 77936867 validating proof residues for power 8
20251112 21:00:12 6e56508172dc76b6 77936867 Proof using power 8
20251112 21:00:18 6e56508172dc76b6 77936867 OK 10000 0.01% fc4f135f7cf4ad29 514 us/it + check 0.28s + save 0.08s; ETA 11:08
20251112 21:00:23 6e56508172dc76b6 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 514 us/it + check 0.28s + save 0.08s; ETA 11:08
20251112 21:00:28 6e56508172dc76b6 77936867 Stopping, please wait..
20251112 21:00:29 6e56508172dc76b6 77936867 OK 30000 0.04% c4e0ff35e3290d98 514 us/it + check 0.28s + save 0.08s; ETA 11:08
20251112 21:00:29 6e56508172dc76b6 Exiting because "stop requested"
20251112 21:00:29 6e56508172dc76b6 Bye
================================================
20251112 21:00:29 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 21:00:29 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 21:00:29 Note: not found 'config.txt'
20251112 21:00:29 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 6
20251112 21:00:29 device 6, unique id 'd64a58a17330f0ed'
20251112 21:00:29 d64a58a17330f0ed 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 21:00:29 d64a58a17330f0ed 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 21:00:29 d64a58a17330f0ed 77936867 OpenCL compilation in 0.78 s
20251112 21:00:30 d64a58a17330f0ed 77936867 PRP starting from beginning
20251112 21:00:30 d64a58a17330f0ed 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 21:00:30 d64a58a17330f0ed 77936867 validating proof residues for power 8
20251112 21:00:30 d64a58a17330f0ed 77936867 Proof using power 8
20251112 21:00:36 d64a58a17330f0ed 77936867 OK 10000 0.01% fc4f135f7cf4ad29 530 us/it + check 0.28s + save 0.09s; ETA 11:28
20251112 21:00:41 d64a58a17330f0ed 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 530 us/it + check 0.28s + save 0.11s; ETA 11:28
20251112 21:00:47 d64a58a17330f0ed 77936867 Stopping, please wait..
20251112 21:00:47 d64a58a17330f0ed 77936867 OK 30000 0.04% c4e0ff35e3290d98 529 us/it + check 0.28s + save 0.09s; ETA 11:27
20251112 21:00:47 d64a58a17330f0ed Exiting because "stop requested"
20251112 21:00:47 d64a58a17330f0ed Bye
================================================
20251112 21:00:47 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 21:00:47 GpuOwl VERSION v7.2-131-gca22dce-dirty
20251112 21:00:47 Note: not found 'config.txt'
20251112 21:00:47 config: -prp 77936867 -iters 30000 -log 10000 -fft 4M -d 7
20251112 21:00:47 device 7, unique id 'f890794172e62691'
20251112 21:00:47 f890794172e62691 77936867 FFT: 4M 1K:8:256 (18.58 bpw)
20251112 21:00:47 f890794172e62691 77936867 OpenCL args "-DEXP=77936867u -DWIDTH=1024u -DSMALL_HEIGHT=256u -DMIDDLE=8u -DAMDGPU=1 -DMM_CHAIN=1u -DMM2_CHAIN=2u -DWEIGHT_STEP=0.33644726404543274 -DIWEIGHT_STEP=-0.25174750481886216 -DIWEIGHTS={0,-0.44011820345520131,-0.37306474779553728,-0.29798072935699788,-0.21390437908665341,-0.11975874301407295,-0.014337887291734644,-0.44814572555075455,} -DFWEIGHTS={0,0.78609128957452257,0.5950610473469905,0.42446232150303748,0.2721098723818392,0.1360521812214803,0.014546452690911484,0.81207258201996746,} -cl-std=CL2.0 -cl-finite-math-only "
20251112 21:00:48 f890794172e62691 77936867 OpenCL compilation in 0.73 s
20251112 21:00:48 f890794172e62691 77936867 PRP starting from beginning
20251112 21:00:48 f890794172e62691 77936867 OK 0 on-load: blockSize 400, 0000000000000003
20251112 21:00:48 f890794172e62691 77936867 validating proof residues for power 8
20251112 21:00:48 f890794172e62691 77936867 Proof using power 8
20251112 21:00:54 f890794172e62691 77936867 OK 10000 0.01% fc4f135f7cf4ad29 525 us/it + check 0.26s + save 0.09s; ETA 11:21
20251112 21:01:00 f890794172e62691 77936867 OK 20000 0.03% 3cd1bd9d5e09cbc5 526 us/it + check 0.26s + save 0.09s; ETA 11:23
20251112 21:01:05 f890794172e62691 77936867 Stopping, please wait..
20251112 21:01:05 f890794172e62691 77936867 OK 30000 0.04% c4e0ff35e3290d98 531 us/it + check 0.26s + save 0.09s; ETA 11:30
20251112 21:01:05 f890794172e62691 Exiting because "stop requested"
20251112 21:01:05 f890794172e62691 Bye
================================================
hermann@7600x:~/gpuowl-v7.2-131-gca22dce-ubuntu$
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Nice output:
Measured peak performances sum up to 49.658 TFLOPs (4.9658×10¹³ double precision floating point operations per second):
The 32GB Instinct MI50 keeps outside being slower than the other MI50s.