Slide 19
Slide 19 text
• 畳み込み層の計算は2つの計算からなる
uniform sampler2D v3;
void main() {
ivec4 col = pos(gl_FragCoord.yx, ...);
int n = col.x;
int h2 = col.y;
int w2 = col.z;
int khkwc1 = col.w;
int kh = khkwc1 / 64 / 4;
int kw = khkwc1 / 64 - kh * 4;
int c1 = khkwc1 - (kh * 4 + kw) * 64;
gl_FragColor.r = (texture2D(v3, pos(c1 + 0, ...))).r;
gl_FragColor.g = (texture2D(v3, pos(c1 + 1, ...))).r;
gl_FragColor.b = (texture2D(v3, pos(c1 + 2, ...))).r;
gl_FragColor.a = (texture2D(v3, pos(c1 + 3, ...))).r;
}
WebGLを使った並列計算
0
2
2
3
1
0
2
0
1
0
1
0
0
2
2
3
1
0
2
2
0
1
0
2
0
1
2
1
0
0
2
2
0
1
0
2
0
1
0
0
0
2
2
0
3
1
0
2
2
0
1
2
Im2Col