- 2011 - A trip through the Graphics Pipeline 2011
- 2015 - Life of a triangle - NVIDIA's logical pipeline
- 2015 - Render Hell 2.0
- 2016 - How bad are small triangles on GPU and why?
- 2017 - GPU Performance for Game Artists
- 2019 - Understanding the anatomy of GPUs using Pokémon
- 2020 - GPU ARCHITECTURE RESOURCES
This file contains 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
#!python2 | |
# -*- coding: utf-8 -*- | |
# 一个简单的 Socks5 代理服务器 , 只有 server 端 , 而且代码比较乱 | |
# 不是很稳定 , 而且使用多线程并不是 select 模型 | |
# Author : WangYihang <wangyihanger@gmail.com> | |
import socket | |
import threading | |
import sys |
This file contains 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
// --- Library -------------------------------------------------------------------------- | |
#include <string.h> | |
#include <assert.h> | |
struct ui_box {int x,y,w,h;}; | |
typedef unsigned long long ui_id; | |
struct ui_node { | |
int parent; | |
int lst, end, nxt; | |
int siz[2]; |
Experimenting a bit with the /d2cgsummary
and /d1reportTime
flags described by Aras here and here I noticed that one of our functions was consistently showing up in the Anomalistic Compile Times
section:
1> Anomalistic Compile Times: 2
1> create_truth_types: 0.643 sec, 2565 instrs
1> draw_nodes: 0.180 sec, 5348 instrs
This file contains 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
# Reverse-mode automatic differentiation | |
import math | |
# d(-x) = -dx | |
def func_neg(x): | |
return -x, [-1] | |
# d(x + y) = dx + dy | |
def func_add(x, y): |
A Pen by Kingjohnny on CodePen.
This file contains 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
<canvas></canvas> | |
<button type="button"> | |
<span>Hover Me</span> | |
</button> |
This file contains 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
import sys | |
# choose() is the same as computing the number of combinations. Normally this is | |
# equal to: | |
# | |
# factorial(N) / (factorial(m) * factorial(N - m)) | |
# | |
# but this is very slow to run and requires a deep stack (without tail | |
# recursion). | |
# |
This file contains 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
struct path_iter { | |
const char *begin; | |
const char *end; | |
/* internal */ | |
const char *next; | |
const char *eof; | |
}; | |
static void | |
path_begin(struct path_iter *it, const char *str, const char *end) | |
{ |
This file contains 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
#define WIN32_LEAN_AND_MEAN | |
#include <windows.h> | |
#include <dwrite.h> | |
#include <intrin.h> | |
#pragma comment (lib, "gdi32.lib") | |
#pragma comment (lib, "user32.lib") | |
#pragma comment (lib, "dwrite.lib") | |
#define CHECK(x) do { if (!(x)) __debugbreak(); } while (0) |
NewerOlder