Skip to content

Commit f24ca8e

Browse files
committed
Merge branch 'pytest-notebooks'
2 parents b2bedf7 + 9a450e7 commit f24ca8e

File tree

8 files changed

+855
-289
lines changed

8 files changed

+855
-289
lines changed

.github/workflows/ci.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
run: |
2222
pip install -U pip
2323
pip install .[dev]
24-
pip install -r requirements-test.txt
24+
pip install -r requirements-direct.txt
2525
2626
- name: Log installed environment
2727
run: |
@@ -33,7 +33,7 @@ jobs:
3333
3434
- name: Run unit tests
3535
run: |
36-
pytest .
36+
pytest -vv .
3737
3838
- name: MyPy
3939
run: |

docs/source/02-value-stats.ipynb

Lines changed: 539 additions & 250 deletions
Large diffs are not rendered by default.

docs/source/03-value-tables.ipynb

Lines changed: 286 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -145,21 +145,21 @@
145145
"name": "stdout",
146146
"output_type": "stream",
147147
"text": [
148-
"format_info_p3109_p4\n",
149-
"0x00 0_0000_000 = 0.0\n",
150-
"0x01 0_0000_001 = +0b0.001*2^-7 = 0_00101_0000000000 +0b1.0000000000*2^-10 = ~0.0010\n",
151-
"0x07 0_0000_111 = +0b0.111*2^-7 = 0_00111_1100000000 +0b1.1100000000*2^-8 = ~0.0068\n",
152-
"0x21 0_0100_001 = +0b1.001*2^-4 = 0_01011_0010000000 +0b1.0010000000*2^-4 = ~0.0703\n",
153-
"0x40 0_1000_000 = +0b1.000*2^0 = 0_01111_0000000000 +0b1.0000000000*2^0 = 1.0\n",
154-
"0x41 0_1000_001 = +0b1.001*2^0 = 0_01111_0010000000 +0b1.0010000000*2^0 = 1.125\n",
155-
"0x7e 0_1111_110 = +0b1.110*2^7 = 0_10110_1100000000 +0b1.1100000000*2^7 = 224.0\n",
156-
"0x7f 0_1111_111 = inf\n",
157-
"0x80 1_0000_000 = nan\n",
158-
"0x81 1_0000_001 = -0b0.001*2^-7 = 1_00101_0000000000 -0b1.0000000000*2^-10 = ~-0.0010\n",
159-
"0xe6 1_1100_110 = -0b1.110*2^4 = 1_10011_1100000000 -0b1.1100000000*2^4 = -28.0\n",
160-
"0xfe 1_1111_110 = -0b1.110*2^7 = 1_10110_1100000000 -0b1.1100000000*2^7 = -224.0\n",
161-
"0xff 1_1111_111 = -inf\n",
162-
"format_info_p3109_p1\n",
148+
"p3109_p3\n",
149+
"0x00 0_00000_00 = 0.0\n",
150+
"0x01 0_00000_01 = +0b0.01*2^-15 = 0_00000_0010000000 +0b0.0010000000*2^-15 = ~7.629e-06\n",
151+
"0x07 0_00001_11 = +0b1.11*2^-15 = 0_00000_1110000000 +0b0.1110000000*2^-15 = ~5.341e-05\n",
152+
"0x21 0_01000_01 = +0b1.01*2^-8 = 0_00111_0100000000 +0b1.0100000000*2^-8 = ~0.0049\n",
153+
"0x40 0_10000_00 = +0b1.00*2^0 = 0_01111_0000000000 +0b1.0000000000*2^0 = 1.0\n",
154+
"0x41 0_10000_01 = +0b1.01*2^0 = 0_01111_0100000000 +0b1.0100000000*2^0 = 1.25\n",
155+
"0x7e 0_11111_10 = +0b1.10*2^15 = 0_11110_1000000000 +0b1.1000000000*2^15 = 49152.0\n",
156+
"0x7f 0_11111_11 = inf\n",
157+
"0x80 1_00000_00 = nan\n",
158+
"0x81 1_00000_01 = -0b0.01*2^-15 = 1_00000_0010000000 -0b0.0010000000*2^-15 = ~-7.629e-06\n",
159+
"0xe6 1_11001_10 = -0b1.10*2^9 = 1_11000_1000000000 -0b1.1000000000*2^9 = -768.0\n",
160+
"0xfe 1_11111_10 = -0b1.10*2^15 = 1_11110_1000000000 -0b1.1000000000*2^15 = -49152.0\n",
161+
"0xff 1_11111_11 = -inf\n",
162+
"p3109_p1\n",
163163
"0x00 0_0000000_ = 0.0\n",
164164
"0x01 0_0000001_ = +0b1.0*2^-62 = <Not16:2.168404344971009e-19> = ~2.168e-19\n",
165165
"0x07 0_0000111_ = +0b1.0*2^-56 = <Not16:1.3877787807814457e-17> = ~1.388e-17\n",
@@ -245,16 +245,21 @@
245245
},
246246
{
247247
"cell_type": "code",
248-
"execution_count": 21,
248+
"execution_count": 5,
249249
"metadata": {},
250250
"outputs": [
251251
{
252252
"data": {
253253
"text/html": [
254254
"<style>\n",
255-
" div.cell_output {\n",
255+
" div.cell_output td {\n",
256256
" margin: 0pt;\n",
257-
" test-align: left;\n",
257+
" text-align: left;\n",
258+
" }\n",
259+
"\n",
260+
" div.cell_output table {\n",
261+
" margin: 0pt;\n",
262+
" text-align: left;\n",
258263
" font-family: monospace;\n",
259264
" font-size: xx-small;\n",
260265
" font-weight: bold;\n",
@@ -310,7 +315,7 @@
310315
" display: inline;\n",
311316
" }\n",
312317
"</style>\n",
313-
"<h3>FP8 Value Table, format_info_ocp_e2m1</h3>\n",
318+
"<h3>FP8 Value Table, ocp_e2m1</h3>\n",
314319
"<table>\n",
315320
" <tr class=\"\">\n",
316321
" <td class=\"normal\">\n",
@@ -382,7 +387,7 @@
382387
"<IPython.core.display.HTML object>"
383388
]
384389
},
385-
"execution_count": 21,
390+
"execution_count": 5,
386391
"metadata": {},
387392
"output_type": "execute_result"
388393
}
@@ -522,7 +527,71 @@
522527
{
523528
"data": {
524529
"text/html": [
525-
"<h3>FP8 Value Table, format_info_ocp_e2m3</h3>\n",
530+
"<style>\n",
531+
" div.cell_output td {\n",
532+
" margin: 0pt;\n",
533+
" text-align: left;\n",
534+
" }\n",
535+
"\n",
536+
" div.cell_output table {\n",
537+
" margin: 0pt;\n",
538+
" text-align: left;\n",
539+
" font-family: monospace;\n",
540+
" font-size: xx-small;\n",
541+
" font-weight: bold;\n",
542+
" border-collapse: collapse;\n",
543+
" }\n",
544+
"\n",
545+
" \n",
546+
" table {\n",
547+
" margin: 0pt;\n",
548+
" font-family: monospace;\n",
549+
" font-size: xx-small;\n",
550+
" font-weight: bold;\n",
551+
" border-collapse: collapse;\n",
552+
" }\n",
553+
"\n",
554+
" tr.blankrow {\n",
555+
" height: 4ex;\n",
556+
" vertical-align: top;\n",
557+
" }\n",
558+
" \n",
559+
" td {\n",
560+
" text-align: left;\n",
561+
" border: solid 2px #ccc;\n",
562+
" width: 49.0%;\n",
563+
" }\n",
564+
" \n",
565+
" .special {\n",
566+
" color: #874723;\n",
567+
" }\n",
568+
" \n",
569+
" .subnormal {\n",
570+
" color: #0121a7;\n",
571+
" }\n",
572+
" \n",
573+
" .normal {\n",
574+
" }\n",
575+
" \n",
576+
" @media (prefers-color-scheme: dark) {\n",
577+
" .special {\n",
578+
" color: orange;\n",
579+
" }\n",
580+
"\n",
581+
" .subnormal {\n",
582+
" color: cyan;\n",
583+
" }\n",
584+
" \n",
585+
" .normal {\n",
586+
" }\n",
587+
" }\n",
588+
"\n",
589+
" pre {\n",
590+
" margin: 1pt 1pt 1pt 13pt;\n",
591+
" display: inline;\n",
592+
" }\n",
593+
"</style>\n",
594+
"<h3>FP8 Value Table, ocp_e2m3</h3>\n",
526595
"<table>\n",
527596
" <tr class=\"\">\n",
528597
" <td class=\"normal\">\n",
@@ -810,7 +879,71 @@
810879
{
811880
"data": {
812881
"text/html": [
813-
"<h3>FP8 Value Table, format_info_ocp_e5m2</h3>\n",
882+
"<style>\n",
883+
" div.cell_output td {\n",
884+
" margin: 0pt;\n",
885+
" text-align: left;\n",
886+
" }\n",
887+
"\n",
888+
" div.cell_output table {\n",
889+
" margin: 0pt;\n",
890+
" text-align: left;\n",
891+
" font-family: monospace;\n",
892+
" font-size: xx-small;\n",
893+
" font-weight: bold;\n",
894+
" border-collapse: collapse;\n",
895+
" }\n",
896+
"\n",
897+
" \n",
898+
" table {\n",
899+
" margin: 0pt;\n",
900+
" font-family: monospace;\n",
901+
" font-size: xx-small;\n",
902+
" font-weight: bold;\n",
903+
" border-collapse: collapse;\n",
904+
" }\n",
905+
"\n",
906+
" tr.blankrow {\n",
907+
" height: 4ex;\n",
908+
" vertical-align: top;\n",
909+
" }\n",
910+
" \n",
911+
" td {\n",
912+
" text-align: left;\n",
913+
" border: solid 2px #ccc;\n",
914+
" width: 24.5%;\n",
915+
" }\n",
916+
" \n",
917+
" .special {\n",
918+
" color: #874723;\n",
919+
" }\n",
920+
" \n",
921+
" .subnormal {\n",
922+
" color: #0121a7;\n",
923+
" }\n",
924+
" \n",
925+
" .normal {\n",
926+
" }\n",
927+
" \n",
928+
" @media (prefers-color-scheme: dark) {\n",
929+
" .special {\n",
930+
" color: orange;\n",
931+
" }\n",
932+
"\n",
933+
" .subnormal {\n",
934+
" color: cyan;\n",
935+
" }\n",
936+
" \n",
937+
" .normal {\n",
938+
" }\n",
939+
" }\n",
940+
"\n",
941+
" pre {\n",
942+
" margin: 1pt 1pt 1pt 13pt;\n",
943+
" display: inline;\n",
944+
" }\n",
945+
"</style>\n",
946+
"<h3>FP8 Value Table, ocp_e5m2</h3>\n",
814947
"<table>\n",
815948
" <tr class=\"\">\n",
816949
" <td class=\"normal\">\n",
@@ -1286,7 +1419,71 @@
12861419
{
12871420
"data": {
12881421
"text/html": [
1289-
"<h3>FP8 Value Table, format_info_ocp_e4m3</h3>\n",
1422+
"<style>\n",
1423+
" div.cell_output td {\n",
1424+
" margin: 0pt;\n",
1425+
" text-align: left;\n",
1426+
" }\n",
1427+
"\n",
1428+
" div.cell_output table {\n",
1429+
" margin: 0pt;\n",
1430+
" text-align: left;\n",
1431+
" font-family: monospace;\n",
1432+
" font-size: xx-small;\n",
1433+
" font-weight: bold;\n",
1434+
" border-collapse: collapse;\n",
1435+
" }\n",
1436+
"\n",
1437+
" \n",
1438+
" table {\n",
1439+
" margin: 0pt;\n",
1440+
" font-family: monospace;\n",
1441+
" font-size: xx-small;\n",
1442+
" font-weight: bold;\n",
1443+
" border-collapse: collapse;\n",
1444+
" }\n",
1445+
"\n",
1446+
" tr.blankrow {\n",
1447+
" height: 4ex;\n",
1448+
" vertical-align: top;\n",
1449+
" }\n",
1450+
" \n",
1451+
" td {\n",
1452+
" text-align: left;\n",
1453+
" border: solid 2px #ccc;\n",
1454+
" width: 24.5%;\n",
1455+
" }\n",
1456+
" \n",
1457+
" .special {\n",
1458+
" color: #874723;\n",
1459+
" }\n",
1460+
" \n",
1461+
" .subnormal {\n",
1462+
" color: #0121a7;\n",
1463+
" }\n",
1464+
" \n",
1465+
" .normal {\n",
1466+
" }\n",
1467+
" \n",
1468+
" @media (prefers-color-scheme: dark) {\n",
1469+
" .special {\n",
1470+
" color: orange;\n",
1471+
" }\n",
1472+
"\n",
1473+
" .subnormal {\n",
1474+
" color: cyan;\n",
1475+
" }\n",
1476+
" \n",
1477+
" .normal {\n",
1478+
" }\n",
1479+
" }\n",
1480+
"\n",
1481+
" pre {\n",
1482+
" margin: 1pt 1pt 1pt 13pt;\n",
1483+
" display: inline;\n",
1484+
" }\n",
1485+
"</style>\n",
1486+
"<h3>FP8 Value Table, ocp_e4m3</h3>\n",
12901487
"<table>\n",
12911488
" <tr class=\"\">\n",
12921489
" <td class=\"normal\">\n",
@@ -1771,7 +1968,71 @@
17711968
{
17721969
"data": {
17731970
"text/html": [
1774-
"<h3>FP8 Value Table, format_info_p3109_p3</h3>\n",
1971+
"<style>\n",
1972+
" div.cell_output td {\n",
1973+
" margin: 0pt;\n",
1974+
" text-align: left;\n",
1975+
" }\n",
1976+
"\n",
1977+
" div.cell_output table {\n",
1978+
" margin: 0pt;\n",
1979+
" text-align: left;\n",
1980+
" font-family: monospace;\n",
1981+
" font-size: xx-small;\n",
1982+
" font-weight: bold;\n",
1983+
" border-collapse: collapse;\n",
1984+
" }\n",
1985+
"\n",
1986+
" \n",
1987+
" table {\n",
1988+
" margin: 0pt;\n",
1989+
" font-family: monospace;\n",
1990+
" font-size: xx-small;\n",
1991+
" font-weight: bold;\n",
1992+
" border-collapse: collapse;\n",
1993+
" }\n",
1994+
"\n",
1995+
" tr.blankrow {\n",
1996+
" height: 4ex;\n",
1997+
" vertical-align: top;\n",
1998+
" }\n",
1999+
" \n",
2000+
" td {\n",
2001+
" text-align: left;\n",
2002+
" border: solid 2px #ccc;\n",
2003+
" width: 24.5%;\n",
2004+
" }\n",
2005+
" \n",
2006+
" .special {\n",
2007+
" color: #874723;\n",
2008+
" }\n",
2009+
" \n",
2010+
" .subnormal {\n",
2011+
" color: #0121a7;\n",
2012+
" }\n",
2013+
" \n",
2014+
" .normal {\n",
2015+
" }\n",
2016+
" \n",
2017+
" @media (prefers-color-scheme: dark) {\n",
2018+
" .special {\n",
2019+
" color: orange;\n",
2020+
" }\n",
2021+
"\n",
2022+
" .subnormal {\n",
2023+
" color: cyan;\n",
2024+
" }\n",
2025+
" \n",
2026+
" .normal {\n",
2027+
" }\n",
2028+
" }\n",
2029+
"\n",
2030+
" pre {\n",
2031+
" margin: 1pt 1pt 1pt 13pt;\n",
2032+
" display: inline;\n",
2033+
" }\n",
2034+
"</style>\n",
2035+
"<h3>FP8 Value Table, p3109_p3</h3>\n",
17752036
"<table>\n",
17762037
" <tr class=\"\">\n",
17772038
" <td class=\"normal\">\n",
@@ -2256,7 +2517,7 @@
22562517
"name": "python",
22572518
"nbconvert_exporter": "python",
22582519
"pygments_lexer": "ipython3",
2259-
"version": "3.10.14"
2520+
"version": "3.10.0"
22602521
}
22612522
},
22622523
"nbformat": 4,

0 commit comments

Comments
 (0)