├── LICENSE.md
├── README.md
├── custom.css
├── data.json
├── fonts
└── LibreFranklin-VF.woff2
├── index.html
├── logo.svg
├── preview.png
└── qa.js
/LICENSE.md:
--------------------------------------------------------------------------------
1 | # MIT License
2 |
3 | Copyright (c) 2023 Nan Xiao
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Deep Learning GPU Selector
2 |
3 | Tool:
4 |
5 | Blog post:
6 |
--------------------------------------------------------------------------------
/custom.css:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-display: swap;
3 | font-family: "Libre Franklin";
4 | src: url("fonts/LibreFranklin-VF.woff2") format("woff2");
5 | font-weight: 100 900;
6 | }
7 |
8 | :root {
9 | --tw-prose-font-heading: "Libre Franklin", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
10 | --tw-prose-font-body: "Libre Franklin", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
11 | }
12 |
13 | body {
14 | font-family: var(--tw-prose-font-body);
15 | background-color: #fefaef;
16 | }
17 |
18 | .h3 {
19 | font-family: var(--tw-prose-font-heading);
20 | font-weight: 700;
21 | }
22 |
23 | .lead,
24 | .btn,
25 | .footer {
26 | font-family: var(--tw-prose-font-body);
27 | font-weight: 400;
28 | }
29 |
30 | .lead {
31 | font-size: 1.5rem;
32 | color: #343a40;
33 | }
34 |
35 | .footer {
36 | font-size: 0.85rem;
37 | }
38 |
39 | .qa {
40 | min-height: 7rem;
41 | display: flex;
42 | justify-content: center;
43 | align-items: center;
44 | }
45 |
46 | a {
47 | color: #868e96;
48 | text-decoration: underline;
49 | text-decoration-color: #adb5bd;
50 | text-underline-offset: 0.35rem;
51 | background-color: transparent;
52 | transition: all .2s ease-in-out;
53 | }
54 |
55 | a:active,
56 | a:hover {
57 | outline-width: 0;
58 | }
59 |
60 | a:hover,
61 | a:focus {
62 | color: #343a40;
63 | text-decoration: underline;
64 | text-decoration-color: #343a40;
65 | }
--------------------------------------------------------------------------------
/data.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "question": "Are you an organization?",
4 | "yes": {
5 | "question": "Do you train large language models (LLMs) with >= 13 billion parameters?",
6 | "yes": {
7 | "question": "Are you rich?",
8 | "yes": "Your best choice is Azure A100 or H100.",
9 | "no": {
10 | "question": "Are you not rich but also not poor?",
11 | "yes": "Your best choice is AWS A100 or H100.",
12 | "no": "Sorry, do something else."
13 | }
14 | },
15 | "no": {
16 | "question": "Are you rich?",
17 | "yes": "Your best choice is H100 SXM.",
18 | "no": "Your best choice is 80% RTX 6000 Ada / L40, 20% H100 SXM / PCIe."
19 | }
20 | },
21 | "no": {
22 | "question": "Do you plan to train models?",
23 | "yes": {
24 | "question": "Do you plan to train transformer models?",
25 | "yes": {
26 | "question": "Your best choice is RTX 4090. Is it within your budget?",
27 | "yes": "Your best choice is RTX 4090.",
28 | "no": {
29 | "question": "Your next best choice is used RTX 3090 or used RTX 3090 Ti. Are they within your budget?",
30 | "yes": "Your best choice is used RTX 3090 or used RTX 3090 Ti.",
31 | "no": "Sorry, do something else."
32 | }
33 | },
34 | "no": {
35 | "question": "Your best choice is RTX 4080. Is it within your budget?",
36 | "yes": "Your best choice is RTX 4080.",
37 | "no": {
38 | "question": "Your next best choice is RTX 4070 Ti. Is it within your budget?",
39 | "yes": "Your best choice is RTX 4070 Ti.",
40 | "no": {
41 | "question": "Your next best choice is used RTX 2080 Ti. Is it within your budget?",
42 | "yes": "Your best choice is used RTX 2080 Ti.",
43 | "no": {
44 | "question": "Your next best choice is used RTX 3060. Is it within your budget?",
45 | "yes": "Your best choice is used RTX 3060.",
46 | "no": {
47 | "question": "Do you only work on small or streaming datasets?",
48 | "yes": "Your best choice is vast.ai or Lambda Cloud.",
49 | "no": "Complicated. Please read the entire blog post and decide based on that information."
50 | }
51 | }
52 | }
53 | }
54 | }
55 | },
56 | "no": {
57 | "question": "Do you use large language models (LLMs)?",
58 | "yes": {
59 | "question": "Your best choice is RTX 4090. Is it within your budget?",
60 | "yes": "Your best choice is RTX 4090.",
61 | "no": {
62 | "question": "Your next best choice is used RTX 3090 or used RTX 3090 Ti. Are they within your budget?",
63 | "yes": "Your best choice is used RTX 3090 or used RTX 3090 Ti.",
64 | "no": {
65 | "question": "Do you only work on small or streaming datasets?",
66 | "yes": "Your best choice is vast.ai or Lambda Cloud.",
67 | "no": "Complicated. Please read the entire blog post and decide based on that information."
68 | }
69 | }
70 | },
71 | "no": {
72 | "question": "Your best choice is RTX 4070 Ti or RTX 4080. Are they within your budget?",
73 | "yes": "Your best choice is RTX 4070 Ti or RTX 4080.",
74 | "no": {
75 | "question": "Your next best choice is used RTX 2080 Ti. Is it within your budget?",
76 | "yes": "Your best choice is used RTX 2080 Ti.",
77 | "no": {
78 | "question": "Your next best choice is used RTX 3060. Is it within your budget?",
79 | "yes": "Your best choice is used RTX 3060.",
80 | "no": {
81 | "question": "Do you only work on small or streaming datasets?",
82 | "yes": "Your best choice is vast.ai or Lambda Cloud.",
83 | "no": "Complicated. Please read the entire blog post and decide based on that information."
84 | }
85 | }
86 | }
87 | }
88 | }
89 | }
90 | }
91 | ]
--------------------------------------------------------------------------------
/fonts/LibreFranklin-VF.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanxstats/gpu/d9a0fb3ebcf29058c65002f2c2a3547ffbcdb93e/fonts/LibreFranklin-VF.woff2
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |