Commit a3c4c5d
Adding vectorized implementations of Exp to Vector64/128/256/512 (dotnet#97114)
* Adding vectorized implementations of Exp to Vector64/128/256/512
* Accelerate TensorPrimitives.Exp for double
* Ensure the right allowedVariance is used for the vectorized exp tests
* Ensure V128/256/512 defers to the next smaller vector size by operating on the lower/upper halves
* Ensure the right allowedVariance amounts are used for the vectorized Exp(float) tests
* Ensure we call Exp and that the methods are properly inlined
* Skip the Exp test for Vector128/256/512 on Mono due to dotnet#971761 parent 6c04b48 commit a3c4c5d
12 files changed
Lines changed: 971 additions & 48 deletions
File tree
- src/libraries
- System.Numerics.Tensors/src/System/Numerics/Tensors/netcore
- System.Private.CoreLib/src/System/Runtime/Intrinsics
- System.Runtime.Intrinsics
- ref
- tests/Vectors
Lines changed: 335 additions & 40 deletions
Large diffs are not rendered by default.
Lines changed: 38 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1426 | 1426 | | |
1427 | 1427 | | |
1428 | 1428 | | |
| 1429 | + | |
| 1430 | + | |
| 1431 | + | |
| 1432 | + | |
| 1433 | + | |
| 1434 | + | |
| 1435 | + | |
| 1436 | + | |
| 1437 | + | |
| 1438 | + | |
| 1439 | + | |
| 1440 | + | |
| 1441 | + | |
| 1442 | + | |
| 1443 | + | |
| 1444 | + | |
| 1445 | + | |
| 1446 | + | |
| 1447 | + | |
| 1448 | + | |
| 1449 | + | |
| 1450 | + | |
| 1451 | + | |
| 1452 | + | |
| 1453 | + | |
| 1454 | + | |
| 1455 | + | |
| 1456 | + | |
| 1457 | + | |
| 1458 | + | |
| 1459 | + | |
| 1460 | + | |
| 1461 | + | |
| 1462 | + | |
1429 | 1463 | | |
1430 | 1464 | | |
1431 | 1465 | | |
| |||
1782 | 1816 | | |
1783 | 1817 | | |
1784 | 1818 | | |
| 1819 | + | |
1785 | 1820 | | |
1786 | 1821 | | |
1787 | 1822 | | |
| |||
1798 | 1833 | | |
1799 | 1834 | | |
1800 | 1835 | | |
| 1836 | + | |
1801 | 1837 | | |
1802 | 1838 | | |
1803 | 1839 | | |
| |||
1814 | 1850 | | |
1815 | 1851 | | |
1816 | 1852 | | |
| 1853 | + | |
1817 | 1854 | | |
1818 | 1855 | | |
1819 | 1856 | | |
| |||
1830 | 1867 | | |
1831 | 1868 | | |
1832 | 1869 | | |
| 1870 | + | |
1833 | 1871 | | |
1834 | 1872 | | |
1835 | 1873 | | |
| |||
Lines changed: 38 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1402 | 1402 | | |
1403 | 1403 | | |
1404 | 1404 | | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
| 1409 | + | |
| 1410 | + | |
| 1411 | + | |
| 1412 | + | |
| 1413 | + | |
| 1414 | + | |
| 1415 | + | |
| 1416 | + | |
| 1417 | + | |
| 1418 | + | |
| 1419 | + | |
| 1420 | + | |
| 1421 | + | |
| 1422 | + | |
| 1423 | + | |
| 1424 | + | |
| 1425 | + | |
| 1426 | + | |
| 1427 | + | |
| 1428 | + | |
| 1429 | + | |
| 1430 | + | |
| 1431 | + | |
| 1432 | + | |
| 1433 | + | |
| 1434 | + | |
| 1435 | + | |
| 1436 | + | |
| 1437 | + | |
| 1438 | + | |
1405 | 1439 | | |
1406 | 1440 | | |
1407 | 1441 | | |
| |||
1756 | 1790 | | |
1757 | 1791 | | |
1758 | 1792 | | |
| 1793 | + | |
1759 | 1794 | | |
1760 | 1795 | | |
1761 | 1796 | | |
| |||
1772 | 1807 | | |
1773 | 1808 | | |
1774 | 1809 | | |
| 1810 | + | |
1775 | 1811 | | |
1776 | 1812 | | |
1777 | 1813 | | |
| |||
1788 | 1824 | | |
1789 | 1825 | | |
1790 | 1826 | | |
| 1827 | + | |
1791 | 1828 | | |
1792 | 1829 | | |
1793 | 1830 | | |
| |||
1804 | 1841 | | |
1805 | 1842 | | |
1806 | 1843 | | |
| 1844 | + | |
1807 | 1845 | | |
1808 | 1846 | | |
1809 | 1847 | | |
| |||
Lines changed: 38 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1453 | 1453 | | |
1454 | 1454 | | |
1455 | 1455 | | |
| 1456 | + | |
| 1457 | + | |
| 1458 | + | |
| 1459 | + | |
| 1460 | + | |
| 1461 | + | |
| 1462 | + | |
| 1463 | + | |
| 1464 | + | |
| 1465 | + | |
| 1466 | + | |
| 1467 | + | |
| 1468 | + | |
| 1469 | + | |
| 1470 | + | |
| 1471 | + | |
| 1472 | + | |
| 1473 | + | |
| 1474 | + | |
| 1475 | + | |
| 1476 | + | |
| 1477 | + | |
| 1478 | + | |
| 1479 | + | |
| 1480 | + | |
| 1481 | + | |
| 1482 | + | |
| 1483 | + | |
| 1484 | + | |
| 1485 | + | |
| 1486 | + | |
| 1487 | + | |
| 1488 | + | |
| 1489 | + | |
1456 | 1490 | | |
1457 | 1491 | | |
1458 | 1492 | | |
| |||
1807 | 1841 | | |
1808 | 1842 | | |
1809 | 1843 | | |
| 1844 | + | |
1810 | 1845 | | |
1811 | 1846 | | |
1812 | 1847 | | |
| |||
1823 | 1858 | | |
1824 | 1859 | | |
1825 | 1860 | | |
| 1861 | + | |
1826 | 1862 | | |
1827 | 1863 | | |
1828 | 1864 | | |
| |||
1839 | 1875 | | |
1840 | 1876 | | |
1841 | 1877 | | |
| 1878 | + | |
1842 | 1879 | | |
1843 | 1880 | | |
1844 | 1881 | | |
| |||
1855 | 1892 | | |
1856 | 1893 | | |
1857 | 1894 | | |
| 1895 | + | |
1858 | 1896 | | |
1859 | 1897 | | |
1860 | 1898 | | |
| |||
Lines changed: 50 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1156 | 1156 | | |
1157 | 1157 | | |
1158 | 1158 | | |
| 1159 | + | |
| 1160 | + | |
| 1161 | + | |
| 1162 | + | |
| 1163 | + | |
| 1164 | + | |
| 1165 | + | |
| 1166 | + | |
| 1167 | + | |
| 1168 | + | |
| 1169 | + | |
| 1170 | + | |
| 1171 | + | |
| 1172 | + | |
| 1173 | + | |
| 1174 | + | |
| 1175 | + | |
| 1176 | + | |
| 1177 | + | |
| 1178 | + | |
| 1179 | + | |
| 1180 | + | |
| 1181 | + | |
| 1182 | + | |
| 1183 | + | |
| 1184 | + | |
| 1185 | + | |
| 1186 | + | |
| 1187 | + | |
| 1188 | + | |
| 1189 | + | |
| 1190 | + | |
| 1191 | + | |
| 1192 | + | |
| 1193 | + | |
| 1194 | + | |
| 1195 | + | |
| 1196 | + | |
| 1197 | + | |
| 1198 | + | |
| 1199 | + | |
| 1200 | + | |
| 1201 | + | |
| 1202 | + | |
| 1203 | + | |
| 1204 | + | |
1159 | 1205 | | |
1160 | 1206 | | |
1161 | 1207 | | |
| |||
1588 | 1634 | | |
1589 | 1635 | | |
1590 | 1636 | | |
| 1637 | + | |
1591 | 1638 | | |
1592 | 1639 | | |
1593 | 1640 | | |
| |||
1603 | 1650 | | |
1604 | 1651 | | |
1605 | 1652 | | |
| 1653 | + | |
1606 | 1654 | | |
1607 | 1655 | | |
1608 | 1656 | | |
| |||
1632 | 1680 | | |
1633 | 1681 | | |
1634 | 1682 | | |
| 1683 | + | |
1635 | 1684 | | |
1636 | 1685 | | |
1637 | 1686 | | |
| |||
1647 | 1696 | | |
1648 | 1697 | | |
1649 | 1698 | | |
| 1699 | + | |
1650 | 1700 | | |
1651 | 1701 | | |
1652 | 1702 | | |
| |||
0 commit comments