Ledger Nano X - The secure hardware wallet
SHARE
TWEET

Untitled

a guest Mar 24th, 2020 1,597 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 1
  2. 00:00:00,000 --> 00:00:08,460
  3. hi unfortunately we had to cancel the
  4.  
  5. 2
  6. 00:00:03,600 --> 00:00:10,919
  7. the talk that we had planned for GDC but
  8.  
  9. 3
  10. 00:00:08,460 --> 00:00:15,120
  11. we do have some super exciting news
  12.  
  13. 4
  14. 00:00:10,919 --> 00:00:17,160
  15. about ps5 and who better to bring that
  16.  
  17. 5
  18. 00:00:15,119 --> 00:00:18,929
  19. to you than the one and only mark Cerny
  20.  
  21. 6
  22. 00:00:17,160 --> 00:00:24,390
  23. without further ado over to you mark
  24.  
  25. 7
  26. 00:00:18,929 --> 00:00:25,980
  27. thank you Jim there will be lots of
  28.  
  29. 8
  30. 00:00:24,390 --> 00:00:28,710
  31. chances later on this year to look at
  32.  
  33. 9
  34. 00:00:25,980 --> 00:00:30,329
  35. the PlayStation 5 games today I want to
  36.  
  37. 10
  38. 00:00:28,710 --> 00:00:32,279
  39. talk a bit about our goals for the
  40.  
  41. 11
  42. 00:00:30,329 --> 00:00:34,379
  43. PlayStation 5 hardware and how they
  44.  
  45. 12
  46. 00:00:32,279 --> 00:00:36,719
  47. influenced the development of the
  48.  
  49. 13
  50. 00:00:34,380 --> 00:00:38,730
  51. console I think you all know I'm a big
  52.  
  53. 14
  54. 00:00:36,719 --> 00:00:41,489
  55. believer in console generations once
  56.  
  57. 15
  58. 00:00:38,729 --> 00:00:43,019
  59. every 5 or 6 or 7 years a console
  60.  
  61. 16
  62. 00:00:41,488 --> 00:00:45,509
  63. arrives with substantially new
  64.  
  65. 17
  66. 00:00:43,020 --> 00:00:47,520
  67. capabilities there's a lot of learning
  68.  
  69. 18
  70. 00:00:45,509 --> 00:00:49,799
  71. by the game developers hopefully not too
  72.  
  73. 19
  74. 00:00:47,520 --> 00:00:52,559
  75. overwhelming and soon there's games that
  76.  
  77. 20
  78. 00:00:49,799 --> 00:00:54,659
  79. could never have been created before now
  80.  
  81. 21
  82. 00:00:52,558 --> 00:00:56,849
  83. it used to be that as a console designer
  84.  
  85. 22
  86. 00:00:54,659 --> 00:00:58,799
  87. you'd somehow Intuit what would be the
  88.  
  89. 23
  90. 00:00:56,850 --> 00:01:00,989
  91. best set of capabilities for the new
  92.  
  93. 24
  94. 00:00:58,799 --> 00:01:03,479
  95. console and then build it in complete
  96.  
  97. 25
  98. 00:01:00,988 --> 00:01:05,849
  99. secrecy for the PlayStation consoles
  100.  
  101. 26
  102. 00:01:03,479 --> 00:01:08,429
  103. that period lasted through PlayStation 3
  104.  
  105. 27
  106. 00:01:05,849 --> 00:01:10,769
  107. a powerful and groundbreaking console
  108.  
  109. 28
  110. 00:01:08,430 --> 00:01:12,540
  111. but also one that caused quite a lot of
  112.  
  113. 29
  114. 00:01:10,769 --> 00:01:15,929
  115. heartache as it was initially difficult
  116.  
  117. 30
  118. 00:01:12,540 --> 00:01:17,640
  119. to develop games for so starting with
  120.  
  121. 31
  122. 00:01:15,930 --> 00:01:19,650
  123. PlayStation 4 we've taken a different
  124.  
  125. 32
  126. 00:01:17,640 --> 00:01:22,259
  127. approach roughly centered around three
  128.  
  129. 33
  130. 00:01:19,650 --> 00:01:24,118
  131. principles the first of these is
  132.  
  133. 34
  134. 00:01:22,259 --> 00:01:26,519
  135. listening to the developers which is to
  136.  
  137. 35
  138. 00:01:24,118 --> 00:01:28,469
  139. say that a lot of what we put into a
  140.  
  141. 36
  142. 00:01:26,519 --> 00:01:31,078
  143. console derives directly from the needs
  144.  
  145. 37
  146. 00:01:28,469 --> 00:01:33,060
  147. and aspirations of the game creators we
  148.  
  149. 38
  150. 00:01:31,078 --> 00:01:35,250
  151. definitely do have some ideas of our own
  152.  
  153. 39
  154. 00:01:33,060 --> 00:01:37,320
  155. but at the core of our philosophy for
  156.  
  157. 40
  158. 00:01:35,250 --> 00:01:40,109
  159. designing consoles is that game players
  160.  
  161. 41
  162. 00:01:37,319 --> 00:01:42,029
  163. are here for the fantastic games which
  164.  
  165. 42
  166. 00:01:40,109 --> 00:01:45,060
  167. is to say that game creators matter
  168.  
  169. 43
  170. 00:01:42,030 --> 00:01:46,890
  171. anything we can do to make life easier
  172.  
  173. 44
  174. 00:01:45,060 --> 00:01:50,430
  175. for the game creators or help them
  176.  
  177. 45
  178. 00:01:46,890 --> 00:01:52,829
  179. realize their dreams we will do so about
  180.  
  181. 46
  182. 00:01:50,430 --> 00:01:54,479
  183. once every two years I take a tour of
  184.  
  185. 47
  186. 00:01:52,828 --> 00:01:56,849
  187. the industry I go to the various
  188.  
  189. 48
  190. 00:01:54,478 --> 00:01:58,349
  191. developers and publishers sit down and
  192.  
  193. 49
  194. 00:01:56,849 --> 00:01:59,849
  195. discuss how they're doing with the
  196.  
  197. 50
  198. 00:01:58,349 --> 00:02:02,578
  199. current consoles and what they'd like to
  200.  
  201. 51
  202. 00:01:59,849 --> 00:02:04,769
  203. see in future consoles this requires
  204.  
  205. 52
  206. 00:02:02,578 --> 00:02:06,658
  207. weeks on the road as reaching the bulk
  208.  
  209. 53
  210. 00:02:04,769 --> 00:02:08,008
  211. of the game creators involves talking to
  212.  
  213. 54
  214. 00:02:06,659 --> 00:02:10,110
  215. well over a hundred people it's
  216.  
  217. 55
  218. 00:02:08,008 --> 00:02:13,669
  219. something like two dozen publishers and
  220.  
  221. 56
  222. 00:02:10,110 --> 00:02:17,220
  223. developers and it is incredibly valuable
  224.  
  225. 57
  226. 00:02:13,669 --> 00:02:20,369
  227. by the way the feature most requested by
  228.  
  229. 58
  230. 00:02:17,219 --> 00:02:22,319
  231. the developers that was an SST which we
  232.  
  233. 59
  234. 00:02:20,370 --> 00:02:24,990
  235. were very happy to put in hardware but a
  236.  
  237. 60
  238. 00:02:22,319 --> 00:02:27,239
  239. lot of problem solving was required I'll
  240.  
  241. 61
  242. 00:02:24,990 --> 00:02:29,430
  243. be doing a deep dive on the SSD and
  244.  
  245. 62
  246. 00:02:27,240 --> 00:02:32,450
  247. surrounding systems later on in this
  248.  
  249. 63
  250. 00:02:29,430 --> 00:02:34,500
  251. talk it's also key to make a
  252.  
  253. 64
  254. 00:02:32,449 --> 00:02:36,479
  255. generational leaf while keeping the
  256.  
  257. 65
  258. 00:02:34,500 --> 00:02:38,400
  259. console sufficiently familiar to game
  260.  
  261. 66
  262. 00:02:36,479 --> 00:02:40,819
  263. developers I think about this in terms
  264.  
  265. 67
  266. 00:02:38,400 --> 00:02:43,860
  267. of balancing evolution and revolution
  268.  
  269. 68
  270. 00:02:40,819 --> 00:02:45,840
  271. now with Playstation one two and three
  272.  
  273. 69
  274. 00:02:43,860 --> 00:02:48,150
  275. the target was a revolution each time
  276.  
  277. 70
  278. 00:02:45,840 --> 00:02:50,099
  279. with a brand new feature set that was
  280.  
  281. 71
  282. 00:02:48,150 --> 00:02:51,599
  283. great in many ways but time for the
  284.  
  285. 72
  286. 00:02:50,099 --> 00:02:53,789
  287. developers to get up and running got
  288.  
  289. 73
  290. 00:02:51,599 --> 00:02:56,939
  291. longer with each console in the past
  292.  
  293. 74
  294. 00:02:53,789 --> 00:02:59,489
  295. I've called this time to triangle here's
  296.  
  297. 75
  298. 00:02:56,939 --> 00:03:01,349
  299. what I had for those three consoles to
  300.  
  301. 76
  302. 00:02:59,490 --> 00:03:03,780
  303. be clear I'm not talking about time to
  304.  
  305. 77
  306. 00:03:01,349 --> 00:03:06,000
  307. make a game developers will be ambitious
  308.  
  309. 78
  310. 00:03:03,780 --> 00:03:08,460
  311. and it may take them six years or so to
  312.  
  313. 79
  314. 00:03:06,000 --> 00:03:10,919
  315. realize their vision what I'm talking
  316.  
  317. 80
  318. 00:03:08,460 --> 00:03:12,689
  319. about is that dead time before graphics
  320.  
  321. 81
  322. 00:03:10,919 --> 00:03:14,789
  323. and other aspects of game development
  324.  
  325. 82
  326. 00:03:12,689 --> 00:03:17,699
  327. are up and running and trying to
  328.  
  329. 83
  330. 00:03:14,789 --> 00:03:19,530
  331. minimize that on the other hand if we're
  332.  
  333. 84
  334. 00:03:17,699 --> 00:03:21,269
  335. trying to reduce that dead time to 0
  336.  
  337. 85
  338. 00:03:19,530 --> 00:03:22,800
  339. that means the hardware architecture
  340.  
  341. 86
  342. 00:03:21,270 --> 00:03:25,469
  343. can't change at all
  344.  
  345. 87
  346. 00:03:22,800 --> 00:03:27,660
  347. we're handcuffed we need to judge for
  348.  
  349. 88
  350. 00:03:25,469 --> 00:03:29,310
  351. each feature what value it adds and
  352.  
  353. 89
  354. 00:03:27,659 --> 00:03:31,549
  355. whether it's worth the increase in
  356.  
  357. 90
  358. 00:03:29,310 --> 00:03:34,110
  359. developer time needed to support it so
  360.  
  361. 91
  362. 00:03:31,550 --> 00:03:35,580
  363. with Playstation 4 we were able to
  364.  
  365. 92
  366. 00:03:34,110 --> 00:03:37,680
  367. strike a pretty good balance between
  368.  
  369. 93
  370. 00:03:35,580 --> 00:03:39,900
  371. performance and familiarity we got
  372.  
  373. 94
  374. 00:03:37,680 --> 00:03:43,770
  375. required learning back to PlayStation 1
  376.  
  377. 95
  378. 00:03:39,900 --> 00:03:45,450
  379. levels with PS 5 the GPU was definitely
  380.  
  381. 96
  382. 00:03:43,770 --> 00:03:48,090
  383. the area that we felt the most tension
  384.  
  385. 97
  386. 00:03:45,449 --> 00:03:50,849
  387. between adding new features and keeping
  388.  
  389. 98
  390. 00:03:48,090 --> 00:03:52,379
  391. a familiar programming model ultimately
  392.  
  393. 99
  394. 00:03:50,849 --> 00:03:54,269
  395. I think we've ended up with something
  396.  
  397. 100
  398. 00:03:52,379 --> 00:03:56,459
  399. under a month of getting up to speed
  400.  
  401. 101
  402. 00:03:54,270 --> 00:03:58,290
  403. that feels like we're striking about the
  404.  
  405. 102
  406. 00:03:56,459 --> 00:04:00,090
  407. right balance I'll go into a bit more
  408.  
  409. 103
  410. 00:03:58,289 --> 00:04:02,789
  411. detail later today about our philosophy
  412.  
  413. 104
  414. 00:04:00,090 --> 00:04:06,689
  415. with the GPU and the specific feature
  416.  
  417. 105
  418. 00:04:02,789 --> 00:04:09,060
  419. set that resulted from it it's also very
  420.  
  421. 106
  422. 00:04:06,689 --> 00:04:10,919
  423. important for us as the hardware team to
  424.  
  425. 107
  426. 00:04:09,060 --> 00:04:13,890
  427. find new dreams by which I mean
  428.  
  429. 108
  430. 00:04:10,919 --> 00:04:16,469
  431. something other than CPU performance GPU
  432.  
  433. 109
  434. 00:04:13,889 --> 00:04:18,298
  435. performance and the amount of RAM the
  436.  
  437. 110
  438. 00:04:16,470 --> 00:04:19,440
  439. increase in graphics performance over
  440.  
  441. 111
  442. 00:04:18,298 --> 00:04:21,719
  443. the past two decades has been
  444.  
  445. 112
  446. 00:04:19,439 --> 00:04:23,219
  447. astonishing but there are other areas in
  448.  
  449. 113
  450. 00:04:21,720 --> 00:04:25,169
  451. which we can innovate and provide a
  452.  
  453. 114
  454. 00:04:23,220 --> 00:04:26,330
  455. significant value to the game creators
  456.  
  457. 115
  458. 00:04:25,168 --> 00:04:29,089
  459. and through them
  460.  
  461. 116
  462. 00:04:26,329 --> 00:04:30,589
  463. the players that's why the SSD was very
  464.  
  465. 117
  466. 00:04:29,089 --> 00:04:32,628
  467. much on our list of directions to
  468.  
  469. 118
  470. 00:04:30,589 --> 00:04:34,638
  471. explore regardless of what came out of
  472.  
  473. 119
  474. 00:04:32,629 --> 00:04:37,610
  475. the conversations with game developers
  476.  
  477. 120
  478. 00:04:34,639 --> 00:04:39,829
  479. and publishers the biggest feature in
  480.  
  481. 121
  482. 00:04:37,610 --> 00:04:42,288
  483. this category is the custom engine for
  484.  
  485. 122
  486. 00:04:39,829 --> 00:04:45,050
  487. audio that's today's final topic the
  488.  
  489. 123
  490. 00:04:42,288 --> 00:04:47,658
  491. push for vastly improved audio and in
  492.  
  493. 124
  494. 00:04:45,050 --> 00:04:49,129
  495. particular 3d audio isn't something that
  496.  
  497. 125
  498. 00:04:47,658 --> 00:04:51,168
  499. came out of the developer meetings it's
  500.  
  501. 126
  502. 00:04:49,129 --> 00:04:53,810
  503. much more the case that we had a dream
  504.  
  505. 127
  506. 00:04:51,168 --> 00:04:55,818
  507. of what might be possible five years
  508.  
  509. 128
  510. 00:04:53,810 --> 00:04:57,769
  511. from now and then worked out a number of
  512.  
  513. 129
  514. 00:04:55,819 --> 00:05:00,468
  515. steps we could take to set us on that
  516.  
  517. 130
  518. 00:04:57,769 --> 00:05:02,870
  519. path so here again are the three
  520.  
  521. 131
  522. 00:05:00,468 --> 00:05:05,120
  523. principles the first being enabling the
  524.  
  525. 132
  526. 00:05:02,870 --> 00:05:08,689
  527. desires of developers to drive the
  528.  
  529. 133
  530. 00:05:05,120 --> 00:05:10,728
  531. hardware design to me the SSD really is
  532.  
  533. 134
  534. 00:05:08,689 --> 00:05:13,430
  535. the key to the next generation it's a
  536.  
  537. 135
  538. 00:05:10,728 --> 00:05:15,709
  539. game changer and it was the number one
  540.  
  541. 136
  542. 00:05:13,430 --> 00:05:18,590
  543. ask from developers for PlayStation 5 as
  544.  
  545. 137
  546. 00:05:15,709 --> 00:05:22,008
  547. in we know it's probably impossible but
  548.  
  549. 138
  550. 00:05:18,589 --> 00:05:23,299
  551. can you put an SSD in it that was a
  552.  
  553. 139
  554. 00:05:22,009 --> 00:05:25,098
  555. discussion we were also having
  556.  
  557. 140
  558. 00:05:23,300 --> 00:05:26,569
  559. internally it was clear that the
  560.  
  561. 141
  562. 00:05:25,098 --> 00:05:28,550
  563. presence of a hard drive in every
  564.  
  565. 142
  566. 00:05:26,569 --> 00:05:30,949
  567. PlayStation 4 was having a positive
  568.  
  569. 143
  570. 00:05:28,550 --> 00:05:33,199
  571. impact a lot of things that would simply
  572.  
  573. 144
  574. 00:05:30,949 --> 00:05:35,449
  575. have been impossible at blu-ray disc
  576.  
  577. 145
  578. 00:05:33,199 --> 00:05:38,389
  579. speeds were now possible at the same
  580.  
  581. 146
  582. 00:05:35,449 --> 00:05:39,430
  583. time though in 2015 and 2016 when we
  584.  
  585. 147
  586. 00:05:38,389 --> 00:05:41,810
  587. were having these conversations
  588.  
  589. 148
  590. 00:05:39,430 --> 00:05:43,370
  591. developers were already banging up
  592.  
  593. 149
  594. 00:05:41,810 --> 00:05:45,649
  595. against the limits of the hard drive and
  596.  
  597. 150
  598. 00:05:43,370 --> 00:05:50,209
  599. a lot of developer time was being spent
  600.  
  601. 151
  602. 00:05:45,649 --> 00:05:52,609
  603. designing around slow load speeds I want
  604.  
  605. 152
  606. 00:05:50,209 --> 00:05:54,948
  607. to focus in on just one number here
  608.  
  609. 153
  610. 00:05:52,610 --> 00:05:57,740
  611. which is how long it takes to load a
  612.  
  613. 154
  614. 00:05:54,949 --> 00:05:59,810
  615. gigabyte of data from a hard drive the
  616.  
  617. 155
  618. 00:05:57,740 --> 00:06:02,150
  619. difficulty being that hard drives are
  620.  
  621. 156
  622. 00:05:59,810 --> 00:06:04,848
  623. neither particularly fast nor flexible
  624.  
  625. 157
  626. 00:06:02,149 --> 00:06:07,370
  627. if all your data is in one block which
  628.  
  629. 158
  630. 00:06:04,848 --> 00:06:09,860
  631. is frankly not very likely you can load
  632.  
  633. 159
  634. 00:06:07,370 --> 00:06:11,899
  635. 50 to 100 megabytes a second depending
  636.  
  637. 160
  638. 00:06:09,860 --> 00:06:13,310
  639. on where the data is located on the hard
  640.  
  641. 161
  642. 00:06:11,899 --> 00:06:15,049
  643. drive let's assume it's on the outer
  644.  
  645. 162
  646. 00:06:13,310 --> 00:06:17,389
  647. edge which means loading a gigabyte
  648.  
  649. 163
  650. 00:06:15,050 --> 00:06:19,728
  651. takes 10 seconds if you compress your
  652.  
  653. 164
  654. 00:06:17,389 --> 00:06:21,829
  655. game packages you can fit more data on
  656.  
  657. 165
  658. 00:06:19,728 --> 00:06:24,228
  659. the blu-ray disc and also effectively
  660.  
  661. 166
  662. 00:06:21,829 --> 00:06:26,990
  663. boost your hard drive read speed by the
  664.  
  665. 167
  666. 00:06:24,228 --> 00:06:28,939
  667. compression ratio we support Z Lib
  668.  
  669. 168
  670. 00:06:26,990 --> 00:06:31,129
  671. decompression on PlayStation 4 that gets
  672.  
  673. 169
  674. 00:06:28,939 --> 00:06:34,838
  675. you something like 50% more data on the
  676.  
  677. 170
  678. 00:06:31,129 --> 00:06:37,099
  679. disk and 50% higher effective read speed
  680.  
  681. 171
  682. 00:06:34,838 --> 00:06:39,408
  683. unfortunately though it's highly likely
  684.  
  685. 172
  686. 00:06:37,098 --> 00:06:41,569
  687. that your data is scattered around in
  688.  
  689. 173
  690. 00:06:39,408 --> 00:06:43,550
  691. files on the hard drive as well as
  692.  
  693. 174
  694. 00:06:41,569 --> 00:06:46,309
  695. sourced from multiple locations within
  696.  
  697. 175
  698. 00:06:43,550 --> 00:06:49,699
  699. those files so lots of Sikhs are needed
  700.  
  701. 176
  702. 00:06:46,309 --> 00:06:51,588
  703. at two to fifty ish milliseconds each my
  704.  
  705. 177
  706. 00:06:49,699 --> 00:06:53,478
  707. rule of thumb is that the hard drive is
  708.  
  709. 178
  710. 00:06:51,588 --> 00:06:56,478
  711. spending two-thirds of its time seeking
  712.  
  713. 179
  714. 00:06:53,478 --> 00:06:58,639
  715. and only a third of its time actually
  716.  
  717. 180
  718. 00:06:56,478 --> 00:07:01,428
  719. loading data putting all of that
  720.  
  721. 181
  722. 00:06:58,639 --> 00:07:05,059
  723. together a gigabyte is very roughly 20
  724.  
  725. 182
  726. 00:07:01,428 --> 00:07:07,638
  727. seconds to load from a hard drive now a
  728.  
  729. 183
  730. 00:07:05,059 --> 00:07:09,800
  731. gigabyte is not much data games are
  732.  
  733. 184
  734. 00:07:07,639 --> 00:07:12,019
  735. using five or six gigabytes of RAM on
  736.  
  737. 185
  738. 00:07:09,800 --> 00:07:14,449
  739. PlayStation 4 so boot times and load
  740.  
  741. 186
  742. 00:07:12,019 --> 00:07:16,819
  743. tons can get pretty grim or to put that
  744.  
  745. 187
  746. 00:07:14,449 --> 00:07:19,389
  747. differently as a player you wait for the
  748.  
  749. 188
  750. 00:07:16,819 --> 00:07:22,399
  751. game to boot wait for the game to load
  752.  
  753. 189
  754. 00:07:19,389 --> 00:07:24,110
  755. wait for the level to reload every time
  756.  
  757. 190
  758. 00:07:22,399 --> 00:07:25,399
  759. you die and you wait for what is
  760.  
  761. 191
  762. 00:07:24,110 --> 00:07:28,819
  763. euphemistically called
  764.  
  765. 192
  766. 00:07:25,399 --> 00:07:31,218
  767. fast travel and all of that leads to the
  768.  
  769. 193
  770. 00:07:28,819 --> 00:07:34,309
  771. dream what if we could have not just an
  772.  
  773. 194
  774. 00:07:31,218 --> 00:07:37,129
  775. SSD but a blindingly fast Assisting if
  776.  
  777. 195
  778. 00:07:34,309 --> 00:07:40,219
  779. we could load five gigabytes a second
  780.  
  781. 196
  782. 00:07:37,129 --> 00:07:41,539
  783. from it what would change now SSDs are
  784.  
  785. 197
  786. 00:07:40,218 --> 00:07:42,769
  787. completely different from hard drives
  788.  
  789. 198
  790. 00:07:41,538 --> 00:07:45,259
  791. they don't have sikhs
  792.  
  793. 199
  794. 00:07:42,769 --> 00:07:47,449
  795. as such if you have a five gigabyte a
  796.  
  797. 200
  798. 00:07:45,259 --> 00:07:49,218
  799. second SSD you can read data from a
  800.  
  801. 201
  802. 00:07:47,449 --> 00:07:52,699
  803. thousand different locations in that
  804.  
  805. 202
  806. 00:07:49,218 --> 00:07:54,889
  807. second pretty much at speed as for time
  808.  
  809. 203
  810. 00:07:52,699 --> 00:07:56,929
  811. to load a gigabyte this is next-gen
  812.  
  813. 204
  814. 00:07:54,889 --> 00:07:59,149
  815. we're talking about so memory is bigger
  816.  
  817. 205
  818. 00:07:56,928 --> 00:08:01,788
  819. instead we should be asking how long to
  820.  
  821. 206
  822. 00:07:59,149 --> 00:08:04,519
  823. load two gigabytes and the answer is
  824.  
  825. 207
  826. 00:08:01,788 --> 00:08:06,528
  827. about a quarter of a second that's
  828.  
  829. 208
  830. 00:08:04,519 --> 00:08:10,218
  831. amazing we're talking two orders of
  832.  
  833. 209
  834. 00:08:06,528 --> 00:08:13,158
  835. magnitude meaning very roughly 100 times
  836.  
  837. 210
  838. 00:08:10,218 --> 00:08:15,079
  839. faster which means at five gigabytes a
  840.  
  841. 211
  842. 00:08:13,158 --> 00:08:18,019
  843. second for the SSD the potential is that
  844.  
  845. 212
  846. 00:08:15,079 --> 00:08:20,149
  847. the game boots in a second there are no
  848.  
  849. 213
  850. 00:08:18,019 --> 00:08:22,278
  851. load screens the game just fades down
  852.  
  853. 214
  854. 00:08:20,149 --> 00:08:24,559
  855. while loading a half dozen gigabytes and
  856.  
  857. 215
  858. 00:08:22,278 --> 00:08:26,449
  859. fades back up again same for a reload
  860.  
  861. 216
  862. 00:08:24,559 --> 00:08:29,449
  863. you're immediately back in the action
  864.  
  865. 217
  866. 00:08:26,449 --> 00:08:31,759
  867. after you die and fast travel becomes so
  868.  
  869. 218
  870. 00:08:29,449 --> 00:08:33,740
  871. fast it's blinking you miss it as game
  872.  
  873. 219
  874. 00:08:31,759 --> 00:08:35,629
  875. creators we go from trying to distract
  876.  
  877. 220
  878. 00:08:33,740 --> 00:08:37,818
  879. the player from how long fast travel is
  880.  
  881. 221
  882. 00:08:35,629 --> 00:08:40,519
  883. taking like those spider-man subway
  884.  
  885. 222
  886. 00:08:37,818 --> 00:08:42,078
  887. rides to being so blindingly fast that
  888.  
  889. 223
  890. 00:08:40,519 --> 00:08:45,289
  891. we might even have to slow that
  892.  
  893. 224
  894. 00:08:42,078 --> 00:08:47,808
  895. transition down pretty cool right but
  896.  
  897. 225
  898. 00:08:45,289 --> 00:08:50,269
  899. for me this is not the primary reason to
  900.  
  901. 226
  902. 00:08:47,808 --> 00:08:52,339
  903. change from a hard drive to an SSD the
  904.  
  905. 227
  906. 00:08:50,269 --> 00:08:54,889
  907. primary reason for an ultra
  908.  
  909. 228
  910. 00:08:52,340 --> 00:08:57,769
  911. SST is that it gives the game designer
  912.  
  913. 229
  914. 00:08:54,889 --> 00:09:00,049
  915. freedom or to put that differently with
  916.  
  917. 230
  918. 00:08:57,769 --> 00:09:02,299
  919. a hard drive the twenty seconds that it
  920.  
  921. 231
  922. 00:09:00,049 --> 00:09:04,879
  923. takes to load a gigabyte can sabotage
  924.  
  925. 232
  926. 00:09:02,299 --> 00:09:07,759
  927. the game that the developer is trying to
  928.  
  929. 233
  930. 00:09:04,879 --> 00:09:09,500
  931. create I think almost all of us in the
  932.  
  933. 234
  934. 00:09:07,759 --> 00:09:11,569
  935. room have experienced this maybe in
  936.  
  937. 235
  938. 00:09:09,500 --> 00:09:13,220
  939. different ways say we're making an
  940.  
  941. 236
  942. 00:09:11,570 --> 00:09:15,230
  943. adventure game and we have two rich
  944.  
  945. 237
  946. 00:09:13,220 --> 00:09:17,840
  947. environments where we each want enough
  948.  
  949. 238
  950. 00:09:15,230 --> 00:09:19,370
  951. textures and models to fill memory what
  952.  
  953. 239
  954. 00:09:17,840 --> 00:09:22,220
  955. you can do as long as you have a long
  956.  
  957. 240
  958. 00:09:19,370 --> 00:09:23,870
  959. staircase or elevator ride or a windy
  960.  
  961. 241
  962. 00:09:22,220 --> 00:09:26,509
  963. corridor where you can ditch the old
  964.  
  965. 242
  966. 00:09:23,870 --> 00:09:29,659
  967. assets and then take 30 seconds or so to
  968.  
  969. 243
  970. 00:09:26,509 --> 00:09:31,819
  971. load the new assets having a 30 second
  972.  
  973. 244
  974. 00:09:29,659 --> 00:09:33,829
  975. elevator ride is a little extreme
  976.  
  977. 245
  978. 00:09:31,820 --> 00:09:35,900
  979. more realistically we'd probably chop
  980.  
  981. 246
  982. 00:09:33,830 --> 00:09:37,820
  983. the world into a number of smaller
  984.  
  985. 247
  986. 00:09:35,899 --> 00:09:40,699
  987. pieces and then do some calculations
  988.  
  989. 248
  990. 00:09:37,820 --> 00:09:42,920
  991. with sightlines and run speeds like we
  992.  
  993. 249
  994. 00:09:40,700 --> 00:09:45,800
  995. did for Haven city when we were making
  996.  
  997. 250
  998. 00:09:42,919 --> 00:09:48,379
  999. jak 2 the game is 20 years old but not
  1000.  
  1001. 251
  1002. 00:09:45,799 --> 00:09:50,629
  1003. much has changed since then all those
  1004.  
  1005. 252
  1006. 00:09:48,379 --> 00:09:52,399
  1007. twisty passages are there for a reason
  1008.  
  1009. 253
  1010. 00:09:50,629 --> 00:09:54,919
  1011. there's a whole subset of level design
  1012.  
  1013. 254
  1014. 00:09:52,399 --> 00:09:57,470
  1015. dedicated to this sort of work but still
  1016.  
  1017. 255
  1018. 00:09:54,919 --> 00:10:01,069
  1019. it's a giant distraction for a team that
  1020.  
  1021. 256
  1022. 00:09:57,470 --> 00:10:03,710
  1023. just wants to make their game so when I
  1024.  
  1025. 257
  1026. 00:10:01,070 --> 00:10:05,780
  1027. talked about the dream of an SSD part of
  1028.  
  1029. 258
  1030. 00:10:03,710 --> 00:10:08,480
  1031. the reason for that 5 gigabyte a second
  1032.  
  1033. 259
  1034. 00:10:05,779 --> 00:10:10,339
  1035. target was to eliminate loads but also
  1036.  
  1037. 260
  1038. 00:10:08,480 --> 00:10:14,149
  1039. part of the reason for that target was
  1040.  
  1041. 261
  1042. 00:10:10,340 --> 00:10:16,580
  1043. streaming as in what if the SSD is so
  1044.  
  1045. 262
  1046. 00:10:14,149 --> 00:10:18,409
  1047. fast that as the player is turning
  1048.  
  1049. 263
  1050. 00:10:16,580 --> 00:10:20,300
  1051. around it's possible to load textures
  1052.  
  1053. 264
  1054. 00:10:18,409 --> 00:10:22,850
  1055. for everything behind the player in that
  1056.  
  1057. 265
  1058. 00:10:20,299 --> 00:10:24,620
  1059. split second if you figure that it takes
  1060.  
  1061. 266
  1062. 00:10:22,850 --> 00:10:26,389
  1063. half a second to turn that's four
  1064.  
  1065. 267
  1066. 00:10:24,620 --> 00:10:28,820
  1067. gigabytes of compressed data you can
  1068.  
  1069. 268
  1070. 00:10:26,389 --> 00:10:31,100
  1071. load that sounds about right for next
  1072.  
  1073. 269
  1074. 00:10:28,820 --> 00:10:32,570
  1075. gen anyway back to the hard drive
  1076.  
  1077. 270
  1078. 00:10:31,100 --> 00:10:34,610
  1079. another strategy for increasing
  1080.  
  1081. 271
  1082. 00:10:32,570 --> 00:10:37,310
  1083. effective read speed is to make big
  1084.  
  1085. 272
  1086. 00:10:34,610 --> 00:10:39,379
  1087. sequential chunks of data for example we
  1088.  
  1089. 273
  1090. 00:10:37,309 --> 00:10:41,629
  1091. might group all the data together for
  1092.  
  1093. 274
  1094. 00:10:39,379 --> 00:10:44,090
  1095. each city block that removes most of the
  1096.  
  1097. 275
  1098. 00:10:41,629 --> 00:10:45,980
  1099. seeks and the streaming gets faster but
  1100.  
  1101. 276
  1102. 00:10:44,090 --> 00:10:48,230
  1103. there's a downside too which is that
  1104.  
  1105. 277
  1106. 00:10:45,980 --> 00:10:49,879
  1107. frequently used data is included in many
  1108.  
  1109. 278
  1110. 00:10:48,230 --> 00:10:51,759
  1111. chunks and therefore is on the hard
  1112.  
  1113. 279
  1114. 00:10:49,879 --> 00:10:54,409
  1115. drive many many times
  1116.  
  1117. 280
  1118. 00:10:51,759 --> 00:10:56,120
  1119. Marvel spider-men uses this strategy and
  1120.  
  1121. 281
  1122. 00:10:54,409 --> 00:10:58,699
  1123. though it works very well for increasing
  1124.  
  1125. 282
  1126. 00:10:56,120 --> 00:11:00,860
  1127. the streaming speed there's a massive
  1128.  
  1129. 283
  1130. 00:10:58,700 --> 00:11:03,259
  1131. duplication as a result some of the
  1132.  
  1133. 284
  1134. 00:11:00,860 --> 00:11:04,550
  1135. objects like mailboxes or newsracks are
  1136.  
  1137. 285
  1138. 00:11:03,259 --> 00:11:07,669
  1139. on the hard drive for
  1140.  
  1141. 286
  1142. 00:11:04,549 --> 00:11:09,049
  1143. hundred times what I'm describing here
  1144.  
  1145. 287
  1146. 00:11:07,669 --> 00:11:11,509
  1147. are things that cramp
  1148.  
  1149. 288
  1150. 00:11:09,049 --> 00:11:13,039
  1151. a creative director style either level
  1152.  
  1153. 289
  1154. 00:11:11,509 --> 00:11:15,588
  1155. design gets a little bit boring in
  1156.  
  1157. 290
  1158. 00:11:13,039 --> 00:11:17,240
  1159. places or the data is duplicated so many
  1160.  
  1161. 291
  1162. 00:11:15,589 --> 00:11:19,550
  1163. times that it no longer fits on the
  1164.  
  1165. 292
  1166. 00:11:17,240 --> 00:11:21,350
  1167. blu-ray disk and you end up with hard
  1168.  
  1169. 293
  1170. 00:11:19,549 --> 00:11:23,689
  1171. limits on the players run speed or
  1172.  
  1173. 294
  1174. 00:11:21,350 --> 00:11:25,670
  1175. driving speed the player can't go faster
  1176.  
  1177. 295
  1178. 00:11:23,690 --> 00:11:28,370
  1179. than the load speed from the hard drive
  1180.  
  1181. 296
  1182. 00:11:25,669 --> 00:11:30,500
  1183. and finally I'm sure many of you have
  1184.  
  1185. 297
  1186. 00:11:28,370 --> 00:11:32,389
  1187. noticed that after a patch download the
  1188.  
  1189. 298
  1190. 00:11:30,500 --> 00:11:35,600
  1191. PlayStation 4 will sometimes take a long
  1192.  
  1193. 299
  1194. 00:11:32,389 --> 00:11:37,338
  1195. time to install the patch that's because
  1196.  
  1197. 300
  1198. 00:11:35,600 --> 00:11:39,019
  1199. when just part of a file has been
  1200.  
  1201. 301
  1202. 00:11:37,339 --> 00:11:41,779
  1203. changed the new data can be downloaded
  1204.  
  1205. 302
  1206. 00:11:39,019 --> 00:11:43,700
  1207. pretty quickly but before the game boots
  1208.  
  1209. 303
  1210. 00:11:41,778 --> 00:11:45,409
  1211. up a brand new file has to be
  1212.  
  1213. 304
  1214. 00:11:43,700 --> 00:11:47,959
  1215. constructed that includes the changed
  1216.  
  1217. 305
  1218. 00:11:45,409 --> 00:11:50,899
  1219. portion otherwise every change would add
  1220.  
  1221. 306
  1222. 00:11:47,958 --> 00:11:52,909
  1223. a seek or two even so you can
  1224.  
  1225. 307
  1226. 00:11:50,899 --> 00:11:55,100
  1227. occasionally see this happening on game
  1228.  
  1229. 308
  1230. 00:11:52,909 --> 00:11:58,219
  1231. titles they start to hitch once they get
  1232.  
  1233. 309
  1234. 00:11:55,100 --> 00:12:00,889
  1235. patched enough with an SSD though no
  1236.  
  1237. 310
  1238. 00:11:58,220 --> 00:12:02,600
  1239. seeks so no need to make brand new files
  1240.  
  1241. 311
  1242. 00:12:00,889 --> 00:12:05,659
  1243. with the changes incorporated into them
  1244.  
  1245. 312
  1246. 00:12:02,600 --> 00:12:09,950
  1247. which means no installs as you know them
  1248.  
  1249. 313
  1250. 00:12:05,659 --> 00:12:12,049
  1251. today there's yet one more benefit which
  1252.  
  1253. 314
  1254. 00:12:09,950 --> 00:12:15,350
  1255. is that system memory can be used much
  1256.  
  1257. 315
  1258. 00:12:12,049 --> 00:12:17,000
  1259. more efficiently on PlayStation 4 game
  1260.  
  1261. 316
  1262. 00:12:15,350 --> 00:12:19,579
  1263. data on the hard drive feels very
  1264.  
  1265. 317
  1266. 00:12:17,000 --> 00:12:21,169
  1267. distant and difficult to use by the time
  1268.  
  1269. 318
  1270. 00:12:19,578 --> 00:12:23,239
  1271. you realize you need a piece of data
  1272.  
  1273. 319
  1274. 00:12:21,169 --> 00:12:25,250
  1275. it's much too late to go out and load it
  1276.  
  1277. 320
  1278. 00:12:23,240 --> 00:12:27,139
  1279. so system memory has to contain all of
  1280.  
  1281. 321
  1282. 00:12:25,250 --> 00:12:30,019
  1283. the data that could be used in the next
  1284.  
  1285. 322
  1286. 00:12:27,139 --> 00:12:32,028
  1287. 30 seconds or so of gameplay that means
  1288.  
  1289. 323
  1290. 00:12:30,019 --> 00:12:34,399
  1291. a lot of the eight gigabytes of system
  1292.  
  1293. 324
  1294. 00:12:32,028 --> 00:12:38,899
  1295. memory is idle it's just waiting there
  1296.  
  1297. 325
  1298. 00:12:34,399 --> 00:12:40,970
  1299. to be potentially used on PlayStation 5
  1300.  
  1301. 326
  1302. 00:12:38,899 --> 00:12:43,250
  1303. though the SSD is very close to being
  1304.  
  1305. 327
  1306. 00:12:40,970 --> 00:12:45,019
  1307. like more RAM typically it's fast enough
  1308.  
  1309. 328
  1310. 00:12:43,250 --> 00:12:47,179
  1311. that when you realize you need a piece
  1312.  
  1313. 329
  1314. 00:12:45,019 --> 00:12:49,698
  1315. of data you can just load it from the
  1316.  
  1317. 330
  1318. 00:12:47,179 --> 00:12:51,588
  1319. SSD and use it there's no need to have
  1320.  
  1321. 331
  1322. 00:12:49,698 --> 00:12:53,769
  1323. lots of data parked in system memory
  1324.  
  1325. 332
  1326. 00:12:51,589 --> 00:12:56,029
  1327. waiting to potentially be used a
  1328.  
  1329. 333
  1330. 00:12:53,769 --> 00:12:58,698
  1331. different way of saying that is that
  1332.  
  1333. 334
  1334. 00:12:56,028 --> 00:13:01,338
  1335. most of Ram is working on the game's
  1336.  
  1337. 335
  1338. 00:12:58,698 --> 00:13:05,299
  1339. behalf this is one of the reasons that
  1340.  
  1341. 336
  1342. 00:13:01,339 --> 00:13:08,180
  1343. 16 gigabytes of gddr5 for playstation 5
  1344.  
  1345. 337
  1346. 00:13:05,299 --> 00:13:10,759
  1347. the presence of the SSD reduces the need
  1348.  
  1349. 338
  1350. 00:13:08,179 --> 00:13:14,539
  1351. for a massive intergenerational increase
  1352.  
  1353. 339
  1354. 00:13:10,759 --> 00:13:16,439
  1355. in size so back to the dream of the SSD
  1356.  
  1357. 340
  1358. 00:13:14,539 --> 00:13:19,139
  1359. here's the set of targets
  1360.  
  1361. 341
  1362. 00:13:16,440 --> 00:13:22,529
  1363. buuut the game in a second no load
  1364.  
  1365. 342
  1366. 00:13:19,139 --> 00:13:25,649
  1367. screens design freedom meaning no twisty
  1368.  
  1369. 343
  1370. 00:13:22,528 --> 00:13:27,720
  1371. passages or long corridors more game on
  1372.  
  1373. 344
  1374. 00:13:25,649 --> 00:13:32,100
  1375. the disk and more game on the SSD and
  1376.  
  1377. 345
  1378. 00:13:27,720 --> 00:13:34,649
  1379. finally those patch installs go away the
  1380.  
  1381. 346
  1382. 00:13:32,100 --> 00:13:36,689
  1383. reality though is that the SSD is just
  1384.  
  1385. 347
  1386. 00:13:34,649 --> 00:13:38,519
  1387. one piece of the puzzle there's a lot of
  1388.  
  1389. 348
  1390. 00:13:36,688 --> 00:13:40,649
  1391. places where bottlenecks can occur in
  1392.  
  1393. 349
  1394. 00:13:38,519 --> 00:13:42,959
  1395. between the SSD and the game code that
  1396.  
  1397. 350
  1398. 00:13:40,649 --> 00:13:45,568
  1399. uses the data you can see this on
  1400.  
  1401. 351
  1402. 00:13:42,958 --> 00:13:47,369
  1403. PlayStation 4 if I use an SSD with 10
  1404.  
  1405. 352
  1406. 00:13:45,568 --> 00:13:50,458
  1407. times the speed of a standard hard drive
  1408.  
  1409. 353
  1410. 00:13:47,370 --> 00:13:54,060
  1411. I probably see only double the loading
  1412.  
  1413. 354
  1414. 00:13:50,458 --> 00:13:56,549
  1415. speed if that for PlayStation 5 our goal
  1416.  
  1417. 355
  1418. 00:13:54,059 --> 00:13:58,799
  1419. was not just that the SSD itself be a
  1420.  
  1421. 356
  1422. 00:13:56,549 --> 00:14:01,049
  1423. hundred times faster it was that game
  1424.  
  1425. 357
  1426. 00:13:58,799 --> 00:14:03,899
  1427. loads and streaming would be a hundred
  1428.  
  1429. 358
  1430. 00:14:01,049 --> 00:14:05,758
  1431. times faster so every single potential
  1432.  
  1433. 359
  1434. 00:14:03,899 --> 00:14:08,610
  1435. bottleneck needed to be addressed and
  1436.  
  1437. 360
  1438. 00:14:05,759 --> 00:14:10,050
  1439. there are a lot of them let's look at
  1440.  
  1441. 361
  1442. 00:14:08,610 --> 00:14:11,810
  1443. check-in and what happens when its
  1444.  
  1445. 362
  1446. 00:14:10,049 --> 00:14:14,490
  1447. overhead gets a hundred times larger
  1448.  
  1449. 363
  1450. 00:14:11,809 --> 00:14:16,708
  1451. conceptually check-in is a pretty simple
  1452.  
  1453. 364
  1454. 00:14:14,490 --> 00:14:18,720
  1455. process data is loaded into system
  1456.  
  1457. 365
  1458. 00:14:16,708 --> 00:14:21,208
  1459. memory from the hard drive or SSD it's
  1460.  
  1461. 366
  1462. 00:14:18,720 --> 00:14:23,278
  1463. examined a few values are tweaked to
  1464.  
  1465. 367
  1466. 00:14:21,208 --> 00:14:26,219
  1467. check it in and then it's moved to its
  1468.  
  1469. 368
  1470. 00:14:23,278 --> 00:14:28,948
  1471. final location at the SSD speeds we're
  1472.  
  1473. 369
  1474. 00:14:26,220 --> 00:14:30,689
  1475. talking about that last part moving the
  1476.  
  1477. 370
  1478. 00:14:28,948 --> 00:14:32,938
  1479. data meaning copying it from one
  1480.  
  1481. 371
  1482. 00:14:30,688 --> 00:14:36,088
  1483. location to another takes roughly an
  1484.  
  1485. 372
  1486. 00:14:32,938 --> 00:14:37,649
  1487. entire next-gen CPU core and that's just
  1488.  
  1489. 373
  1490. 00:14:36,089 --> 00:14:39,029
  1491. the tip of the iceberg if all the
  1492.  
  1493. 374
  1494. 00:14:37,649 --> 00:14:41,159
  1495. overheads get a hundred times larger
  1496.  
  1497. 375
  1498. 00:14:39,028 --> 00:14:42,990
  1499. that will cripple the framerate as soon
  1500.  
  1501. 376
  1502. 00:14:41,159 --> 00:14:45,870
  1503. as the player moves and that massive
  1504.  
  1505. 377
  1506. 00:14:42,990 --> 00:14:48,480
  1507. stream of data starts coming off the SSD
  1508.  
  1509. 378
  1510. 00:14:45,870 --> 00:14:51,269
  1511. so to solve all of that we built a lot
  1512.  
  1513. 379
  1514. 00:14:48,480 --> 00:14:53,399
  1515. of custom hardware namely a custom flash
  1516.  
  1517. 380
  1518. 00:14:51,269 --> 00:14:56,220
  1519. controller and a number of custom units
  1520.  
  1521. 381
  1522. 00:14:53,399 --> 00:14:58,559
  1523. in our main chip the flash controller in
  1524.  
  1525. 382
  1526. 00:14:56,220 --> 00:15:01,079
  1527. the SSD was designed for smooth and
  1528.  
  1529. 383
  1530. 00:14:58,559 --> 00:15:03,000
  1531. bottleneck free operation but also with
  1532.  
  1533. 384
  1534. 00:15:01,078 --> 00:15:04,919
  1535. games in mind for example there are six
  1536.  
  1537. 385
  1538. 00:15:03,000 --> 00:15:07,470
  1539. levels of priority when reading from the
  1540.  
  1541. 386
  1542. 00:15:04,919 --> 00:15:09,899
  1543. SSD priority is very important you can
  1544.  
  1545. 387
  1546. 00:15:07,470 --> 00:15:11,370
  1547. imagine the player heading into some new
  1548.  
  1549. 388
  1550. 00:15:09,899 --> 00:15:13,828
  1551. location in the world and the game
  1552.  
  1553. 389
  1554. 00:15:11,370 --> 00:15:15,899
  1555. requesting a few gigabytes of textures
  1556.  
  1557. 390
  1558. 00:15:13,828 --> 00:15:18,659
  1559. and while those textures are being
  1560.  
  1561. 391
  1562. 00:15:15,899 --> 00:15:21,389
  1563. loaded an enemy is shot and has to speak
  1564.  
  1565. 392
  1566. 00:15:18,659 --> 00:15:23,100
  1567. a few dying words having multiple
  1568.  
  1569. 393
  1570. 00:15:21,389 --> 00:15:25,730
  1571. priority levels let's the audio for
  1572.  
  1573. 394
  1574. 00:15:23,100 --> 00:15:28,949
  1575. those dying words get loaded immediately
  1576.  
  1577. 395
  1578. 00:15:25,730 --> 00:15:30,300
  1579. on one side that flash controller
  1580.  
  1581. 396
  1582. 00:15:28,948 --> 00:15:32,639
  1583. connects to the actual
  1584.  
  1585. 397
  1586. 00:15:30,299 --> 00:15:34,889
  1587. - dyes that supply of the storage to
  1588.  
  1589. 398
  1590. 00:15:32,639 --> 00:15:37,289
  1591. reach art bandwidth target of 5
  1592.  
  1593. 399
  1594. 00:15:34,889 --> 00:15:39,840
  1595. gigabytes a second we ended up with a 12
  1596.  
  1597. 400
  1598. 00:15:37,289 --> 00:15:42,209
  1599. channel interface 8 channels wouldn't be
  1600.  
  1601. 401
  1602. 00:15:39,840 --> 00:15:43,980
  1603. enough the resulting bandwidth we have
  1604.  
  1605. 402
  1606. 00:15:42,210 --> 00:15:46,620
  1607. achieved is actually five and a half
  1608.  
  1609. 403
  1610. 00:15:43,980 --> 00:15:48,810
  1611. gigabytes a second with a 12 channel
  1612.  
  1613. 404
  1614. 00:15:46,620 --> 00:15:53,159
  1615. interface the most natural size that
  1616.  
  1617. 405
  1618. 00:15:48,809 --> 00:15:56,039
  1619. emerges for an SSD is 825 gigabytes the
  1620.  
  1621. 406
  1622. 00:15:53,159 --> 00:15:58,169
  1623. key question for us was is that enough
  1624.  
  1625. 407
  1626. 00:15:56,039 --> 00:16:00,179
  1627. it's tempting to add more but flash
  1628.  
  1629. 408
  1630. 00:15:58,169 --> 00:16:02,370
  1631. certainly doesn't come cheap and we have
  1632.  
  1633. 409
  1634. 00:16:00,179 --> 00:16:04,349
  1635. a responsibility to our gaming audience
  1636.  
  1637. 410
  1638. 00:16:02,370 --> 00:16:07,529
  1639. to be cost effective with regards to
  1640.  
  1641. 411
  1642. 00:16:04,350 --> 00:16:09,240
  1643. what we put in the console ultimately we
  1644.  
  1645. 412
  1646. 00:16:07,529 --> 00:16:11,850
  1647. resolve this question by looking at the
  1648.  
  1649. 413
  1650. 00:16:09,240 --> 00:16:14,549
  1651. play patterns of a broad range of gamers
  1652.  
  1653. 414
  1654. 00:16:11,850 --> 00:16:15,840
  1655. we examined the specific games that they
  1656.  
  1657. 415
  1658. 00:16:14,549 --> 00:16:18,269
  1659. were playing over the course of a
  1660.  
  1661. 416
  1662. 00:16:15,840 --> 00:16:20,700
  1663. weekend or week or a month and whether
  1664.  
  1665. 417
  1666. 00:16:18,269 --> 00:16:23,490
  1667. that set of games would fit properly on
  1668.  
  1669. 418
  1670. 00:16:20,700 --> 00:16:25,800
  1671. the SSD we were able to establish that
  1672.  
  1673. 419
  1674. 00:16:23,490 --> 00:16:28,350
  1675. the friction caused by reinstalled or
  1676.  
  1677. 420
  1678. 00:16:25,799 --> 00:16:29,669
  1679. read downloads would be quite low and so
  1680.  
  1681. 421
  1682. 00:16:28,350 --> 00:16:32,879
  1683. we locked in on that
  1684.  
  1685. 422
  1686. 00:16:29,669 --> 00:16:34,949
  1687. 825 gigabyte size while also preparing
  1688.  
  1689. 423
  1690. 00:16:32,879 --> 00:16:37,080
  1691. multiple strategies so that those who
  1692.  
  1693. 424
  1694. 00:16:34,950 --> 00:16:38,930
  1695. want more storage can add it I'll go
  1696.  
  1697. 425
  1698. 00:16:37,080 --> 00:16:41,400
  1699. through the details in a moment
  1700.  
  1701. 426
  1702. 00:16:38,929 --> 00:16:43,049
  1703. back to the flash controller on the
  1704.  
  1705. 427
  1706. 00:16:41,399 --> 00:16:45,870
  1707. other side it connects to our main
  1708.  
  1709. 428
  1710. 00:16:43,049 --> 00:16:48,750
  1711. custom chip via four lanes of Gen 4 PCIe
  1712.  
  1713. 429
  1714. 00:16:45,870 --> 00:16:51,560
  1715. and inside the main custom chip is a
  1716.  
  1717. 430
  1718. 00:16:48,750 --> 00:16:53,700
  1719. pretty hefty unit dedicated to i/o
  1720.  
  1721. 431
  1722. 00:16:51,559 --> 00:16:56,179
  1723. before we talk about what that does
  1724.  
  1725. 432
  1726. 00:16:53,700 --> 00:16:58,650
  1727. let's talk compression for a moment
  1728.  
  1729. 433
  1730. 00:16:56,179 --> 00:17:00,989
  1731. PlayStation 4 used Z live as its
  1732.  
  1733. 434
  1734. 00:16:58,649 --> 00:17:04,200
  1735. compression format we decided to use it
  1736.  
  1737. 435
  1738. 00:17:00,990 --> 00:17:05,970
  1739. again on PlayStation 5 but on my 2017
  1740.  
  1741. 436
  1742. 00:17:04,200 --> 00:17:09,360
  1743. tour of developers I learned about a new
  1744.  
  1745. 437
  1746. 00:17:05,970 --> 00:17:12,589
  1747. format called Kraken from rad game tools
  1748.  
  1749. 438
  1750. 00:17:09,359 --> 00:17:15,449
  1751. it's like Z libs smarter cousin simple
  1752.  
  1753. 439
  1754. 00:17:12,589 --> 00:17:18,209
  1755. similar types of algorithms but about
  1756.  
  1757. 440
  1758. 00:17:15,450 --> 00:17:20,910
  1759. 10% better compression which is pretty
  1760.  
  1761. 441
  1762. 00:17:18,210 --> 00:17:24,090
  1763. big that means 10% more game on the UHD
  1764.  
  1765. 442
  1766. 00:17:20,910 --> 00:17:25,529
  1767. blu-ray disc or on the SSD kraken had
  1768.  
  1769. 443
  1770. 00:17:24,089 --> 00:17:27,929
  1771. only been out for a year that it was
  1772.  
  1773. 444
  1774. 00:17:25,529 --> 00:17:29,879
  1775. already becoming a de-facto industry
  1776.  
  1777. 445
  1778. 00:17:27,930 --> 00:17:31,799
  1779. standard half of the teams I talked to
  1780.  
  1781. 446
  1782. 00:17:29,880 --> 00:17:34,650
  1783. or either using it or getting ready to
  1784.  
  1785. 447
  1786. 00:17:31,799 --> 00:17:37,019
  1787. evaluate it so we hustled and built a
  1788.  
  1789. 448
  1790. 00:17:34,650 --> 00:17:40,019
  1791. custom decompressor into the i/o unit
  1792.  
  1793. 449
  1794. 00:17:37,019 --> 00:17:40,929
  1795. one capable of handling over 5 gigabytes
  1796.  
  1797. 450
  1798. 00:17:40,019 --> 00:17:43,778
  1799. of crack and
  1800.  
  1801. 451
  1802. 00:17:40,929 --> 00:17:45,519
  1803. format input data a second after
  1804.  
  1805. 452
  1806. 00:17:43,778 --> 00:17:47,558
  1807. decompression that typically becomes
  1808.  
  1809. 453
  1810. 00:17:45,519 --> 00:17:49,749
  1811. eight or nine gigabytes but the unit
  1812.  
  1813. 454
  1814. 00:17:47,558 --> 00:17:52,749
  1815. itself is capable of outputting as much
  1816.  
  1817. 455
  1818. 00:17:49,749 --> 00:17:54,778
  1819. as 22 gigabytes a second if the data
  1820.  
  1821. 456
  1822. 00:17:52,749 --> 00:17:57,639
  1823. happened to compress particularly well
  1824.  
  1825. 457
  1826. 00:17:54,778 --> 00:18:00,278
  1827. by the way in terms of performance that
  1828.  
  1829. 458
  1830. 00:17:57,638 --> 00:18:01,418
  1831. custom decompressor equates to nine of
  1832.  
  1833. 459
  1834. 00:18:00,278 --> 00:18:02,980
  1835. our Xen two cores
  1836.  
  1837. 460
  1838. 00:18:01,419 --> 00:18:04,749
  1839. that's what it would take to decompress
  1840.  
  1841. 461
  1842. 00:18:02,980 --> 00:18:08,288
  1843. the kraken stream with a conventional
  1844.  
  1845. 462
  1846. 00:18:04,749 --> 00:18:10,868
  1847. CPU there's a lot more in the custom IO
  1848.  
  1849. 463
  1850. 00:18:08,288 --> 00:18:12,819
  1851. unit including a dedicated DMA
  1852.  
  1853. 464
  1854. 00:18:10,868 --> 00:18:14,648
  1855. controller the game can direct exactly
  1856.  
  1857. 465
  1858. 00:18:12,819 --> 00:18:17,230
  1859. where it wants to send the data coming
  1860.  
  1861. 466
  1862. 00:18:14,648 --> 00:18:19,569
  1863. off of the SSD this equates to another
  1864.  
  1865. 467
  1866. 00:18:17,230 --> 00:18:21,759
  1867. Xen two core or two in terms of its copy
  1868.  
  1869. 468
  1870. 00:18:19,569 --> 00:18:24,908
  1871. performance its primary purpose is to
  1872.  
  1873. 469
  1874. 00:18:21,759 --> 00:18:27,249
  1875. remove check in as a bottleneck there's
  1876.  
  1877. 470
  1878. 00:18:24,909 --> 00:18:28,360
  1879. two dedicated i/o coprocessors in a
  1880.  
  1881. 471
  1882. 00:18:27,249 --> 00:18:29,919
  1883. large ramp pool
  1884.  
  1885. 472
  1886. 00:18:28,359 --> 00:18:31,569
  1887. these are tins in 2 cores there are
  1888.  
  1889. 473
  1890. 00:18:29,919 --> 00:18:34,629
  1891. there principally to direct the variety
  1892.  
  1893. 474
  1894. 00:18:31,569 --> 00:18:36,788
  1895. of custom hardware around them one of
  1896.  
  1897. 475
  1898. 00:18:34,628 --> 00:18:39,759
  1899. the co processors is dedicated to SSD
  1900.  
  1901. 476
  1902. 00:18:36,788 --> 00:18:41,558
  1903. i/o this lets us bypass traditional file
  1904.  
  1905. 477
  1906. 00:18:39,759 --> 00:18:44,259
  1907. i/o and it's bottlenecks when reading
  1908.  
  1909. 478
  1910. 00:18:41,558 --> 00:18:46,388
  1911. from the SSD the other is responsible
  1912.  
  1913. 479
  1914. 00:18:44,259 --> 00:18:48,128
  1915. for memory mapping which I know doesn't
  1916.  
  1917. 480
  1918. 00:18:46,388 --> 00:18:50,740
  1919. sound like anything related to the SSD
  1920.  
  1921. 481
  1922. 00:18:48,128 --> 00:18:53,618
  1923. but a lot of developers map and remap
  1924.  
  1925. 482
  1926. 00:18:50,740 --> 00:18:56,378
  1927. memory as part of file i/o and this too
  1928.  
  1929. 483
  1930. 00:18:53,618 --> 00:18:58,480
  1931. can become a bottleneck there are
  1932.  
  1933. 484
  1934. 00:18:56,378 --> 00:19:00,908
  1935. coherency engines to assist the
  1936.  
  1937. 485
  1938. 00:18:58,480 --> 00:19:03,190
  1939. coprocessors coherency comes up a lot in
  1940.  
  1941. 486
  1942. 00:19:00,909 --> 00:19:05,909
  1943. places probably the biggest coherency
  1944.  
  1945. 487
  1946. 00:19:03,190 --> 00:19:08,558
  1947. issue is stale data in the GPU caches
  1948.  
  1949. 488
  1950. 00:19:05,909 --> 00:19:11,289
  1951. flushing all of the GPU caches whenever
  1952.  
  1953. 489
  1954. 00:19:08,558 --> 00:19:13,599
  1955. the SSD is read is an unattractive
  1956.  
  1957. 490
  1958. 00:19:11,288 --> 00:19:15,700
  1959. option it could really hurt the GPU
  1960.  
  1961. 491
  1962. 00:19:13,599 --> 00:19:18,548
  1963. performance so we've implemented a
  1964.  
  1965. 492
  1966. 00:19:15,700 --> 00:19:21,519
  1967. gentler way of doing things where the
  1968.  
  1969. 493
  1970. 00:19:18,548 --> 00:19:23,950
  1971. coherency engines inform the GPU of the
  1972.  
  1973. 494
  1974. 00:19:21,519 --> 00:19:26,740
  1975. overwritten address ranges and custom
  1976.  
  1977. 495
  1978. 00:19:23,950 --> 00:19:29,319
  1979. scrubbers in several dozen GPU caches do
  1980.  
  1981. 496
  1982. 00:19:26,740 --> 00:19:31,749
  1983. pinpoint evictions of just those address
  1984.  
  1985. 497
  1986. 00:19:29,319 --> 00:19:33,668
  1987. ranges the best thing is as a game
  1988.  
  1989. 498
  1990. 00:19:31,749 --> 00:19:35,919
  1991. developer when you read from the SSD you
  1992.  
  1993. 499
  1994. 00:19:33,669 --> 00:19:37,570
  1995. don't need to know any of this you don't
  1996.  
  1997. 500
  1998. 00:19:35,919 --> 00:19:40,389
  1999. even need to know that your data is
  2000.  
  2001. 501
  2002. 00:19:37,569 --> 00:19:42,128
  2003. compressed you just indicate what data
  2004.  
  2005. 502
  2006. 00:19:40,388 --> 00:19:44,079
  2007. you'd like to read from your original
  2008.  
  2009. 503
  2010. 00:19:42,128 --> 00:19:45,878
  2011. uncompressed file and where you'd like
  2012.  
  2013. 504
  2014. 00:19:44,079 --> 00:19:48,849
  2015. to put it and the whole process of
  2016.  
  2017. 505
  2018. 00:19:45,878 --> 00:19:51,759
  2019. loading it happens invisibly to you and
  2020.  
  2021. 506
  2022. 00:19:48,849 --> 00:19:54,139
  2023. at very high speed back to the dream
  2024.  
  2025. 507
  2026. 00:19:51,759 --> 00:19:56,660
  2027. thanks to all of that surrounding hard
  2028.  
  2029. 508
  2030. 00:19:54,140 --> 00:19:58,520
  2031. our 5.5 gigabytes a second really should
  2032.  
  2033. 509
  2034. 00:19:56,660 --> 00:20:01,460
  2035. translate into something like a hundred
  2036.  
  2037. 510
  2038. 00:19:58,519 --> 00:20:04,009
  2039. times faster IO than ps4 and allow the
  2040.  
  2041. 511
  2042. 00:20:01,460 --> 00:20:06,259
  2043. dream of no load screens and superfast
  2044.  
  2045. 512
  2046. 00:20:04,009 --> 00:20:09,259
  2047. streaming to become a reality
  2048.  
  2049. 513
  2050. 00:20:06,259 --> 00:20:11,359
  2051. having said that expandability of our
  2052.  
  2053. 514
  2054. 00:20:09,259 --> 00:20:13,250
  2055. SSD is going to be quite important
  2056.  
  2057. 515
  2058. 00:20:11,359 --> 00:20:15,439
  2059. flash is costly and you may very well
  2060.  
  2061. 516
  2062. 00:20:13,250 --> 00:20:19,009
  2063. want to add storage to whatever we put
  2064.  
  2065. 517
  2066. 00:20:15,440 --> 00:20:20,960
  2067. in the console now the kind of storage
  2068.  
  2069. 518
  2070. 00:20:19,009 --> 00:20:22,940
  2071. you need depends on how you're going to
  2072.  
  2073. 519
  2074. 00:20:20,960 --> 00:20:25,009
  2075. use it if you have an extensive
  2076.  
  2077. 520
  2078. 00:20:22,940 --> 00:20:26,360
  2079. PlayStation 4 library and you'd like to
  2080.  
  2081. 521
  2082. 00:20:25,009 --> 00:20:28,039
  2083. take advantage of backwards
  2084.  
  2085. 522
  2086. 00:20:26,359 --> 00:20:30,918
  2087. compatibility to play those games on
  2088.  
  2089. 523
  2090. 00:20:28,039 --> 00:20:33,798
  2091. PlayStation 5 then a large external hard
  2092.  
  2093. 524
  2094. 00:20:30,919 --> 00:20:35,480
  2095. drive is ideal you can leave your games
  2096.  
  2097. 525
  2098. 00:20:33,798 --> 00:20:38,119
  2099. on the hard drive and play them directly
  2100.  
  2101. 526
  2102. 00:20:35,480 --> 00:20:40,190
  2103. from there thus saving the pricier SSD
  2104.  
  2105. 527
  2106. 00:20:38,119 --> 00:20:42,500
  2107. storage for your PlayStation 5 titles or
  2108.  
  2109. 528
  2110. 00:20:40,190 --> 00:20:44,990
  2111. you can copy your active PlayStation 4
  2112.  
  2113. 529
  2114. 00:20:42,500 --> 00:20:46,279
  2115. titles to the SSD if your purpose in
  2116.  
  2117. 530
  2118. 00:20:44,990 --> 00:20:49,160
  2119. adding more storage is to play
  2120.  
  2121. 531
  2122. 00:20:46,279 --> 00:20:52,039
  2123. playstation 5 titles though ideally you
  2124.  
  2125. 532
  2126. 00:20:49,160 --> 00:20:55,130
  2127. would add to your SSD storage we will be
  2128.  
  2129. 533
  2130. 00:20:52,039 --> 00:20:56,899
  2131. supporting certain m2 SSDs these are
  2132.  
  2133. 534
  2134. 00:20:55,130 --> 00:20:59,630
  2135. internal drives that you can get on the
  2136.  
  2137. 535
  2138. 00:20:56,900 --> 00:21:02,059
  2139. open market and install in a bay in the
  2140.  
  2141. 536
  2142. 00:20:59,630 --> 00:21:04,160
  2143. playstation 5 as for which ones we
  2144.  
  2145. 537
  2146. 00:21:02,058 --> 00:21:06,589
  2147. support and when I'll get to that in a
  2148.  
  2149. 538
  2150. 00:21:04,160 --> 00:21:09,769
  2151. moment they connect through the custom
  2152.  
  2153. 539
  2154. 00:21:06,589 --> 00:21:11,269
  2155. io unit just like our SSD does so they
  2156.  
  2157. 540
  2158. 00:21:09,769 --> 00:21:13,789
  2159. can take full advantage of the
  2160.  
  2161. 541
  2162. 00:21:11,269 --> 00:21:15,789
  2163. decompression io coprocessors and all
  2164.  
  2165. 542
  2166. 00:21:13,789 --> 00:21:18,678
  2167. the other features I was talking about
  2168.  
  2169. 543
  2170. 00:21:15,789 --> 00:21:21,289
  2171. here's the catch though that commercial
  2172.  
  2173. 544
  2174. 00:21:18,679 --> 00:21:23,929
  2175. drive has to be at least as fast as ours
  2176.  
  2177. 545
  2178. 00:21:21,289 --> 00:21:26,058
  2179. games that rely on the speed of our SSD
  2180.  
  2181. 546
  2182. 00:21:23,929 --> 00:21:28,970
  2183. need to work flawlessly with nem to
  2184.  
  2185. 547
  2186. 00:21:26,058 --> 00:21:31,160
  2187. drive when I gave the Wired interview
  2188.  
  2189. 548
  2190. 00:21:28,970 --> 00:21:33,769
  2191. last year I said that the PlayStation 5
  2192.  
  2193. 549
  2194. 00:21:31,160 --> 00:21:36,890
  2195. SSD was faster than anything available
  2196.  
  2197. 550
  2198. 00:21:33,769 --> 00:21:40,308
  2199. on PC at the time commercial M 2 drives
  2200.  
  2201. 551
  2202. 00:21:36,890 --> 00:21:43,130
  2203. used pcie 3.0 and four lanes of that cap
  2204.  
  2205. 552
  2206. 00:21:40,308 --> 00:21:46,819
  2207. out at 3.5 gigabytes a second in other
  2208.  
  2209. 553
  2210. 00:21:43,130 --> 00:21:51,020
  2211. words no pcie 3.0 Drive can hit the
  2212.  
  2213. 554
  2214. 00:21:46,819 --> 00:21:52,970
  2215. required spec M 2 drives with PCI u 4.0
  2216.  
  2217. 555
  2218. 00:21:51,019 --> 00:21:56,480
  2219. or now out in the market we're getting
  2220.  
  2221. 556
  2222. 00:21:52,970 --> 00:21:58,759
  2223. our in samples and seeing four or five
  2224.  
  2225. 557
  2226. 00:21:56,480 --> 00:22:00,558
  2227. gigabytes a second from them by year's
  2228.  
  2229. 558
  2230. 00:21:58,759 --> 00:22:03,379
  2231. end I expect there will be drives that
  2232.  
  2233. 559
  2234. 00:22:00,558 --> 00:22:05,808
  2235. saturate 4.0 and support seven gigabytes
  2236.  
  2237. 560
  2238. 00:22:03,380 --> 00:22:06,800
  2239. a second having said that we are
  2240.  
  2241. 561
  2242. 00:22:05,808 --> 00:22:08,930
  2243. comparing
  2244.  
  2245. 562
  2246. 00:22:06,799 --> 00:22:10,879
  2247. apples and oranges though because that
  2248.  
  2249. 563
  2250. 00:22:08,930 --> 00:22:12,650
  2251. commercial m2 Drive will have its own
  2252.  
  2253. 564
  2254. 00:22:10,880 --> 00:22:15,590
  2255. architecture its own flash controller
  2256.  
  2257. 565
  2258. 00:22:12,650 --> 00:22:17,720
  2259. and so on for example the nvme
  2260.  
  2261. 566
  2262. 00:22:15,589 --> 00:22:19,849
  2263. specification lays out a priority scheme
  2264.  
  2265. 567
  2266. 00:22:17,720 --> 00:22:23,089
  2267. for requests that the m2 drives can use
  2268.  
  2269. 568
  2270. 00:22:19,849 --> 00:22:26,359
  2271. and that scheme is pretty nice but it
  2272.  
  2273. 569
  2274. 00:22:23,089 --> 00:22:29,480
  2275. only has two true priority levels our
  2276.  
  2277. 570
  2278. 00:22:26,359 --> 00:22:31,039
  2279. drive supports six we can hook up a
  2280.  
  2281. 571
  2282. 00:22:29,480 --> 00:22:33,559
  2283. drive with only two priority levels
  2284.  
  2285. 572
  2286. 00:22:31,039 --> 00:22:35,629
  2287. definitely but our custom IO unit has to
  2288.  
  2289. 573
  2290. 00:22:33,559 --> 00:22:37,700
  2291. arbitrate the extra priorities rather
  2292.  
  2293. 574
  2294. 00:22:35,630 --> 00:22:39,950
  2295. than the m2 drives flash controller and
  2296.  
  2297. 575
  2298. 00:22:37,700 --> 00:22:41,809
  2299. so the m2 drive needs a little extra
  2300.  
  2301. 576
  2302. 00:22:39,950 --> 00:22:44,269
  2303. speed to take care of issues arising
  2304.  
  2305. 577
  2306. 00:22:41,809 --> 00:22:45,710
  2307. from the different approach that
  2308.  
  2309. 578
  2310. 00:22:44,269 --> 00:22:47,960
  2311. Commercial Drive also needs to
  2312.  
  2313. 579
  2314. 00:22:45,710 --> 00:22:50,380
  2315. physically fit inside of the bay we
  2316.  
  2317. 580
  2318. 00:22:47,960 --> 00:22:53,029
  2319. created in PlayStation 5 for m2 drives
  2320.  
  2321. 581
  2322. 00:22:50,380 --> 00:22:55,580
  2323. unlike internal hard drives there's
  2324.  
  2325. 582
  2326. 00:22:53,029 --> 00:22:58,190
  2327. unfortunately no standard for the height
  2328.  
  2329. 583
  2330. 00:22:55,579 --> 00:23:00,409
  2331. of an m2 Drive and some m2 drives have
  2332.  
  2333. 584
  2334. 00:22:58,190 --> 00:23:03,650
  2335. giant heat sinks in fact some of them
  2336.  
  2337. 585
  2338. 00:23:00,410 --> 00:23:05,360
  2339. even have their own fans right now we're
  2340.  
  2341. 586
  2342. 00:23:03,650 --> 00:23:07,850
  2343. getting em to drive samples and
  2344.  
  2345. 587
  2346. 00:23:05,359 --> 00:23:09,949
  2347. benchmarking them in various ways when
  2348.  
  2349. 588
  2350. 00:23:07,849 --> 00:23:11,629
  2351. games hit in beta as they get ready for
  2352.  
  2353. 589
  2354. 00:23:09,950 --> 00:23:13,730
  2355. the PlayStation 5 launch at year-end
  2356.  
  2357. 590
  2358. 00:23:11,630 --> 00:23:15,020
  2359. we'll also be doing some compatibility
  2360.  
  2361. 591
  2362. 00:23:13,730 --> 00:23:17,329
  2363. testing to make sure that the
  2364.  
  2365. 592
  2366. 00:23:15,019 --> 00:23:18,980
  2367. architecture of particular M 2 drives
  2368.  
  2369. 593
  2370. 00:23:17,329 --> 00:23:20,809
  2371. isn't too foreign for the games to
  2372.  
  2373. 594
  2374. 00:23:18,980 --> 00:23:22,940
  2375. handle once we've done that
  2376.  
  2377. 595
  2378. 00:23:20,809 --> 00:23:24,740
  2379. compatibility testing we should be able
  2380.  
  2381. 596
  2382. 00:23:22,940 --> 00:23:26,630
  2383. to start letting you know which drives
  2384.  
  2385. 597
  2386. 00:23:24,740 --> 00:23:28,400
  2387. will physically fit and which drive
  2388.  
  2389. 598
  2390. 00:23:26,630 --> 00:23:31,280
  2391. samples have benchmark appropriately
  2392.  
  2393. 599
  2394. 00:23:28,400 --> 00:23:32,930
  2395. high in our testing it would be great if
  2396.  
  2397. 600
  2398. 00:23:31,279 --> 00:23:35,660
  2399. that happened by launch but it's likely
  2400.  
  2401. 601
  2402. 00:23:32,930 --> 00:23:37,940
  2403. to be a bit past it so please hold off
  2404.  
  2405. 602
  2406. 00:23:35,660 --> 00:23:40,960
  2407. on getting that M to drive until you
  2408.  
  2409. 603
  2410. 00:23:37,940 --> 00:23:43,880
  2411. hear from us ok back to our principles
  2412.  
  2413. 604
  2414. 00:23:40,960 --> 00:23:45,799
  2415. balancing evolution and revolution is
  2416.  
  2417. 605
  2418. 00:23:43,880 --> 00:23:49,970
  2419. the second of them this was definitely a
  2420.  
  2421. 606
  2422. 00:23:45,799 --> 00:23:52,490
  2423. recurring theme with the GPU we need new
  2424.  
  2425. 607
  2426. 00:23:49,970 --> 00:23:54,049
  2427. GPU features and capabilities if if we
  2428.  
  2429. 608
  2430. 00:23:52,490 --> 00:23:56,329
  2431. only have more performance it's not
  2432.  
  2433. 609
  2434. 00:23:54,049 --> 00:23:58,609
  2435. really a new generation of console of
  2436.  
  2437. 610
  2438. 00:23:56,329 --> 00:24:00,859
  2439. course many of these capabilities result
  2440.  
  2441. 611
  2442. 00:23:58,609 --> 00:24:03,049
  2443. in more performance that's part of why a
  2444.  
  2445. 612
  2446. 00:24:00,859 --> 00:24:05,209
  2447. Playstation 5 teraflop is more powerful
  2448.  
  2449. 613
  2450. 00:24:03,049 --> 00:24:06,799
  2451. than a Playstation 4 teraflop but we
  2452.  
  2453. 614
  2454. 00:24:05,210 --> 00:24:09,140
  2455. aren't just looking for the performance
  2456.  
  2457. 615
  2458. 00:24:06,799 --> 00:24:11,419
  2459. we also need the ability to do something
  2460.  
  2461. 616
  2462. 00:24:09,140 --> 00:24:14,360
  2463. with the GPU that could not have been
  2464.  
  2465. 617
  2466. 00:24:11,420 --> 00:24:15,560
  2467. done before and we need higher
  2468.  
  2469. 618
  2470. 00:24:14,359 --> 00:24:17,569
  2471. performance per watt
  2472.  
  2473. 619
  2474. 00:24:15,559 --> 00:24:20,609
  2475. every time we double the performance of
  2476.  
  2477. 620
  2478. 00:24:17,569 --> 00:24:22,500
  2479. some GPU component we don't want to find
  2480.  
  2481. 621
  2482. 00:24:20,609 --> 00:24:25,288
  2483. we've doubled the power consumed and the
  2484.  
  2485. 622
  2486. 00:24:22,500 --> 00:24:27,869
  2487. heat produced but at the same time we
  2488.  
  2489. 623
  2490. 00:24:25,288 --> 00:24:30,450
  2491. have to make sure the GPU can run ps4
  2492.  
  2493. 624
  2494. 00:24:27,869 --> 00:24:32,308
  2495. games and we have to ensure that the
  2496.  
  2497. 625
  2498. 00:24:30,450 --> 00:24:35,399
  2499. architecture is easy for the developers
  2500.  
  2501. 626
  2502. 00:24:32,308 --> 00:24:37,980
  2503. to adopt now backwards compatibility was
  2504.  
  2505. 627
  2506. 00:24:35,398 --> 00:24:40,109
  2507. handled masterfully by AMD they treated
  2508.  
  2509. 628
  2510. 00:24:37,980 --> 00:24:42,298
  2511. it as a key need throughout the design
  2512.  
  2513. 629
  2514. 00:24:40,109 --> 00:24:44,158
  2515. process as our solution to adding new
  2516.  
  2517. 630
  2518. 00:24:42,298 --> 00:24:46,408
  2519. features without blindsiding developers
  2520.  
  2521. 631
  2522. 00:24:44,159 --> 00:24:48,269
  2523. we made sure that if there were new
  2524.  
  2525. 632
  2526. 00:24:46,409 --> 00:24:51,330
  2527. significant features it would be
  2528.  
  2529. 633
  2530. 00:24:48,269 --> 00:24:52,859
  2531. optional to use them the GPU supports
  2532.  
  2533. 634
  2534. 00:24:51,329 --> 00:24:55,319
  2535. ray tracing but you don't have to use
  2536.  
  2537. 635
  2538. 00:24:52,859 --> 00:24:57,028
  2539. ray tracing to make your game the GPU
  2540.  
  2541. 636
  2542. 00:24:55,319 --> 00:24:58,918
  2543. supports primitive shaders but you can
  2544.  
  2545. 637
  2546. 00:24:57,028 --> 00:25:02,038
  2547. release your first game on PlayStation 5
  2548.  
  2549. 638
  2550. 00:24:58,919 --> 00:25:04,350
  2551. without making any use of them before I
  2552.  
  2553. 639
  2554. 00:25:02,038 --> 00:25:06,028
  2555. get into the capabilities of the GPU I'd
  2556.  
  2557. 640
  2558. 00:25:04,349 --> 00:25:09,538
  2559. like to make clear two points that can
  2560.  
  2561. 641
  2562. 00:25:06,028 --> 00:25:12,769
  2563. be quite confusing first we have a
  2564.  
  2565. 642
  2566. 00:25:09,538 --> 00:25:16,019
  2567. custom AMD GPU based on there are DNA 2
  2568.  
  2569. 643
  2570. 00:25:12,769 --> 00:25:18,089
  2571. technology what does that mean AMD is
  2572.  
  2573. 644
  2574. 00:25:16,019 --> 00:25:20,370
  2575. continuously improving and revising
  2576.  
  2577. 645
  2578. 00:25:18,089 --> 00:25:23,369
  2579. their tech for our DNA to their goals
  2580.  
  2581. 646
  2582. 00:25:20,369 --> 00:25:25,619
  2583. were roughly speaking to reduce power of
  2584.  
  2585. 647
  2586. 00:25:23,369 --> 00:25:27,209
  2587. consumption by rhe architecting the GPU
  2588.  
  2589. 648
  2590. 00:25:25,619 --> 00:25:30,178
  2591. to put data close to where it's needed
  2592.  
  2593. 649
  2594. 00:25:27,210 --> 00:25:32,548
  2595. to optimize the GPU for performance and
  2596.  
  2597. 650
  2598. 00:25:30,179 --> 00:25:36,028
  2599. to adding new more advanced feature set
  2600.  
  2601. 651
  2602. 00:25:32,548 --> 00:25:38,369
  2603. but that feature set is malleable which
  2604.  
  2605. 652
  2606. 00:25:36,028 --> 00:25:40,470
  2607. is to say that we have our own needs for
  2608.  
  2609. 653
  2610. 00:25:38,369 --> 00:25:43,109
  2611. PlayStation and that can factor into
  2612.  
  2613. 654
  2614. 00:25:40,470 --> 00:25:45,808
  2615. what the AMD roadmap becomes so
  2616.  
  2617. 655
  2618. 00:25:43,109 --> 00:25:47,759
  2619. collaboration is born if we bring
  2620.  
  2621. 656
  2622. 00:25:45,808 --> 00:25:50,038
  2623. concepts to AMD that are felt to be
  2624.  
  2625. 657
  2626. 00:25:47,759 --> 00:25:52,169
  2627. widely useful then they can be adopted
  2628.  
  2629. 658
  2630. 00:25:50,038 --> 00:25:55,888
  2631. into our DNA - and used broadly
  2632.  
  2633. 659
  2634. 00:25:52,169 --> 00:25:57,659
  2635. including in PC GPUs if the ideas are
  2636.  
  2637. 660
  2638. 00:25:55,888 --> 00:25:58,709
  2639. sufficiently specific to what we're
  2640.  
  2641. 661
  2642. 00:25:57,659 --> 00:26:00,929
  2643. trying to accomplish
  2644.  
  2645. 662
  2646. 00:25:58,710 --> 00:26:02,788
  2647. like the GPU cache scrubbers I was
  2648.  
  2649. 663
  2650. 00:26:00,929 --> 00:26:06,240
  2651. talking about then they end up being
  2652.  
  2653. 664
  2654. 00:26:02,788 --> 00:26:09,869
  2655. just for us if you see a similar
  2656.  
  2657. 665
  2658. 00:26:06,240 --> 00:26:11,700
  2659. discrete GPU available as a PC card at
  2660.  
  2661. 666
  2662. 00:26:09,869 --> 00:26:13,888
  2663. roughly the same time as we release our
  2664.  
  2665. 667
  2666. 00:26:11,700 --> 00:26:16,860
  2667. console that means our collaboration
  2668.  
  2669. 668
  2670. 00:26:13,888 --> 00:26:19,319
  2671. with AMD succeeded in producing
  2672.  
  2673. 669
  2674. 00:26:16,859 --> 00:26:21,509
  2675. technology useful in both worlds it
  2676.  
  2677. 670
  2678. 00:26:19,319 --> 00:26:23,788
  2679. doesn't mean that we as sony simply
  2680.  
  2681. 671
  2682. 00:26:21,509 --> 00:26:26,669
  2683. incorporated the pc part into our
  2684.  
  2685. 672
  2686. 00:26:23,788 --> 00:26:29,038
  2687. console this continuous improvement in
  2688.  
  2689. 673
  2690. 00:26:26,669 --> 00:26:30,870
  2691. AMD technology means it's dangerous to
  2692.  
  2693. 674
  2694. 00:26:29,038 --> 00:26:32,669
  2695. rely on teraflops as an absolute
  2696.  
  2697. 675
  2698. 00:26:30,869 --> 00:26:34,678
  2699. indicator of performance and
  2700.  
  2701. 676
  2702. 00:26:32,669 --> 00:26:37,710
  2703. see you count should be avoided as well
  2704.  
  2705. 677
  2706. 00:26:34,679 --> 00:26:39,989
  2707. in the case of CPUs we all understand
  2708.  
  2709. 678
  2710. 00:26:37,710 --> 00:26:42,690
  2711. this the PlayStation 4 and PlayStation 5
  2712.  
  2713. 679
  2714. 00:26:39,989 --> 00:26:43,919
  2715. each have eight CPUs but we never think
  2716.  
  2717. 680
  2718. 00:26:42,690 --> 00:26:46,558
  2719. that meant the capabilities and
  2720.  
  2721. 681
  2722. 00:26:43,919 --> 00:26:48,299
  2723. performance are equal it's the same for
  2724.  
  2725. 682
  2726. 00:26:46,558 --> 00:26:50,190
  2727. see use for one thing they've been
  2728.  
  2729. 683
  2730. 00:26:48,298 --> 00:26:52,739
  2731. getting much larger over time
  2732.  
  2733. 684
  2734. 00:26:50,190 --> 00:26:55,769
  2735. adding new features means adding lots of
  2736.  
  2737. 685
  2738. 00:26:52,739 --> 00:26:59,730
  2739. transistors in fact the transistor count
  2740.  
  2741. 686
  2742. 00:26:55,769 --> 00:27:01,259
  2743. for a Playstation 5 CU is 62% larger
  2744.  
  2745. 687
  2746. 00:26:59,730 --> 00:27:05,009
  2747. than the transistor count for a
  2748.  
  2749. 688
  2750. 00:27:01,259 --> 00:27:07,710
  2751. playstation 4 CU second the playstation
  2752.  
  2753. 689
  2754. 00:27:05,009 --> 00:27:10,618
  2755. 5 and GPU is backwards compatible with
  2756.  
  2757. 690
  2758. 00:27:07,710 --> 00:27:11,999
  2759. playstation 4 what does that mean one
  2760.  
  2761. 691
  2762. 00:27:10,618 --> 00:27:14,038
  2763. way you can achieve backwards
  2764.  
  2765. 692
  2766. 00:27:11,999 --> 00:27:16,319
  2767. compatibility is to put the previous
  2768.  
  2769. 693
  2770. 00:27:14,038 --> 00:27:18,298
  2771. consoles chipset in the new console like
  2772.  
  2773. 694
  2774. 00:27:16,319 --> 00:27:20,548
  2775. we did with some PlayStation 3s but
  2776.  
  2777. 695
  2778. 00:27:18,298 --> 00:27:23,099
  2779. that's of course extremely expensive a
  2780.  
  2781. 696
  2782. 00:27:20,548 --> 00:27:24,720
  2783. better way is to incorporate any
  2784.  
  2785. 697
  2786. 00:27:23,099 --> 00:27:27,509
  2787. differences in the previous consoles
  2788.  
  2789. 698
  2790. 00:27:24,720 --> 00:27:30,149
  2791. logic into the new consoles custom chips
  2792.  
  2793. 699
  2794. 00:27:27,509 --> 00:27:32,249
  2795. meaning that even as the technology
  2796.  
  2797. 700
  2798. 00:27:30,148 --> 00:27:34,349
  2799. evolves the logic and feature set that
  2800.  
  2801. 701
  2802. 00:27:32,249 --> 00:27:36,808
  2803. PlayStation 4 and PlayStation 4 Pro
  2804.  
  2805. 702
  2806. 00:27:34,349 --> 00:27:39,388
  2807. titles rely on is still available in
  2808.  
  2809. 703
  2810. 00:27:36,808 --> 00:27:41,668
  2811. backwards compatibility modes one
  2812.  
  2813. 704
  2814. 00:27:39,388 --> 00:27:43,288
  2815. advantage of this strategy is that once
  2816.  
  2817. 705
  2818. 00:27:41,669 --> 00:27:46,528
  2819. backwards compatibility is in the
  2820.  
  2821. 706
  2822. 00:27:43,288 --> 00:27:48,960
  2823. console it's in if not as if a cost down
  2824.  
  2825. 707
  2826. 00:27:46,528 --> 00:27:51,839
  2827. will remove backwards compatibility like
  2828.  
  2829. 708
  2830. 00:27:48,960 --> 00:27:54,028
  2831. it did on PlayStation 3 achieving this
  2832.  
  2833. 709
  2834. 00:27:51,839 --> 00:27:56,668
  2835. unification of functionality took years
  2836.  
  2837. 710
  2838. 00:27:54,028 --> 00:27:58,409
  2839. of efforts by AMD as any roadmap
  2840.  
  2841. 711
  2842. 00:27:56,669 --> 00:28:02,309
  2843. advancement creates a potential
  2844.  
  2845. 712
  2846. 00:27:58,409 --> 00:28:04,169
  2847. divergence in logic running ps4 and PS 4
  2848.  
  2849. 713
  2850. 00:28:02,308 --> 00:28:06,628
  2851. titles at boosted frequencies has also
  2852.  
  2853. 714
  2854. 00:28:04,169 --> 00:28:08,340
  2855. added complexity the boost is truly
  2856.  
  2857. 715
  2858. 00:28:06,628 --> 00:28:10,709
  2859. massive this time around and some game
  2860.  
  2861. 716
  2862. 00:28:08,339 --> 00:28:13,249
  2863. code just can't handle it testing has to
  2864.  
  2865. 717
  2866. 00:28:10,710 --> 00:28:16,019
  2867. be done on the title by title basis
  2868.  
  2869. 718
  2870. 00:28:13,249 --> 00:28:17,399
  2871. results are excellent though we recently
  2872.  
  2873. 719
  2874. 00:28:16,019 --> 00:28:19,528
  2875. took a look at the top hundred
  2876.  
  2877. 720
  2878. 00:28:17,398 --> 00:28:22,349
  2879. PlayStation 4 titles as ranked by play
  2880.  
  2881. 721
  2882. 00:28:19,528 --> 00:28:24,179
  2883. time and we're expecting almost all of
  2884.  
  2885. 722
  2886. 00:28:22,349 --> 00:28:27,898
  2887. them to be playable at launch on
  2888.  
  2889. 723
  2890. 00:28:24,179 --> 00:28:30,119
  2891. playstation 5 with regards to new
  2892.  
  2893. 724
  2894. 00:28:27,898 --> 00:28:32,219
  2895. features as I said our strategy was to
  2896.  
  2897. 725
  2898. 00:28:30,118 --> 00:28:35,038
  2899. try to break new ground but at the same
  2900.  
  2901. 726
  2902. 00:28:32,220 --> 00:28:38,399
  2903. time not to require use of the new GPU
  2904.  
  2905. 727
  2906. 00:28:35,038 --> 00:28:40,259
  2907. capabilities for more than a decade GPUs
  2908.  
  2909. 728
  2910. 00:28:38,398 --> 00:28:42,538
  2911. have imposed a restriction on game
  2912.  
  2913. 729
  2914. 00:28:40,259 --> 00:28:43,980
  2915. engines software handles vertex
  2916.  
  2917. 730
  2918. 00:28:42,538 --> 00:28:45,400
  2919. processing but for the most part
  2920.  
  2921. 731
  2922. 00:28:43,980 --> 00:28:47,529
  2923. dedicated hardware
  2924.  
  2925. 732
  2926. 00:28:45,400 --> 00:28:49,960
  2927. responsible for the triangles and other
  2928.  
  2929. 733
  2930. 00:28:47,529 --> 00:28:52,660
  2931. geometry that the vertices form that
  2932.  
  2933. 734
  2934. 00:28:49,960 --> 00:28:54,789
  2935. means it's not possible to do even basic
  2936.  
  2937. 735
  2938. 00:28:52,660 --> 00:28:56,769
  2939. optimizations such as aborting
  2940.  
  2941. 736
  2942. 00:28:54,789 --> 00:29:00,879
  2943. processing of a vertex if all geometry
  2944.  
  2945. 737
  2946. 00:28:56,769 --> 00:29:03,369
  2947. that uses it is off screen PlayStation 5
  2948.  
  2949. 738
  2950. 00:29:00,880 --> 00:29:04,870
  2951. has a new unit called the geometry
  2952.  
  2953. 739
  2954. 00:29:03,369 --> 00:29:06,819
  2955. engine which brings handling of
  2956.  
  2957. 740
  2958. 00:29:04,869 --> 00:29:09,399
  2959. triangles and other primitives under
  2960.  
  2961. 741
  2962. 00:29:06,819 --> 00:29:11,079
  2963. full programmatic control as a game
  2964.  
  2965. 742
  2966. 00:29:09,400 --> 00:29:13,600
  2967. developer you're free to ignore its
  2968.  
  2969. 743
  2970. 00:29:11,079 --> 00:29:15,309
  2971. existence and use the PlayStation 5 GPU
  2972.  
  2973. 744
  2974. 00:29:13,599 --> 00:29:18,549
  2975. as if it were no more capable than the
  2976.  
  2977. 745
  2978. 00:29:15,309 --> 00:29:21,730
  2979. ps4 GPU or you can use this new
  2980.  
  2981. 746
  2982. 00:29:18,549 --> 00:29:23,769
  2983. intelligence in various ways simple
  2984.  
  2985. 747
  2986. 00:29:21,730 --> 00:29:25,599
  2987. usage could be performance optimizations
  2988.  
  2989. 748
  2990. 00:29:23,769 --> 00:29:28,119
  2991. such as removing back faced or
  2992.  
  2993. 749
  2994. 00:29:25,599 --> 00:29:30,099
  2995. off-screen vertices and triangles more
  2996.  
  2997. 750
  2998. 00:29:28,119 --> 00:29:31,869
  2999. complex usage involves something called
  3000.  
  3001. 751
  3002. 00:29:30,099 --> 00:29:34,480
  3003. primitive shaders which allow the game
  3004.  
  3005. 752
  3006. 00:29:31,869 --> 00:29:36,609
  3007. to synthesize geometry on-the-fly as
  3008.  
  3009. 753
  3010. 00:29:34,480 --> 00:29:39,370
  3011. it's being rendered it's a brand new
  3012.  
  3013. 754
  3014. 00:29:36,609 --> 00:29:41,409
  3015. capability using primitive shaders on
  3016.  
  3017. 755
  3018. 00:29:39,369 --> 00:29:43,989
  3019. PlayStation 5 will allow for a broad
  3020.  
  3021. 756
  3022. 00:29:41,410 --> 00:29:46,420
  3023. variety of techniques including smoothly
  3024.  
  3025. 757
  3026. 00:29:43,990 --> 00:29:48,400
  3027. varying level of detail addition of
  3028.  
  3029. 758
  3030. 00:29:46,420 --> 00:29:50,529
  3031. procedural detail to close up objects
  3032.  
  3033. 759
  3034. 00:29:48,400 --> 00:29:53,230
  3035. and improvements to particle effects and
  3036.  
  3037. 760
  3038. 00:29:50,529 --> 00:29:55,809
  3039. other visual special effects another
  3040.  
  3041. 761
  3042. 00:29:53,230 --> 00:29:58,539
  3043. major new feature of our custom our DNA
  3044.  
  3045. 762
  3046. 00:29:55,809 --> 00:30:01,649
  3047. 2 based GPU is ray tracing using the
  3048.  
  3049. 763
  3050. 00:29:58,539 --> 00:30:05,109
  3051. same strategy as AMD's upcoming PC GPUs
  3052.  
  3053. 764
  3054. 00:30:01,650 --> 00:30:07,120
  3055. the ciues contain a new specialized unit
  3056.  
  3057. 765
  3058. 00:30:05,109 --> 00:30:09,099
  3059. called the intersection engine which can
  3060.  
  3061. 766
  3062. 00:30:07,119 --> 00:30:11,289
  3063. calculate the intersection of rays with
  3064.  
  3065. 767
  3066. 00:30:09,099 --> 00:30:13,389
  3067. boxes and triangles to use the
  3068.  
  3069. 768
  3070. 00:30:11,289 --> 00:30:15,670
  3071. intersection engine first you build what
  3072.  
  3073. 769
  3074. 00:30:13,390 --> 00:30:18,100
  3075. is called an acceleration structure its
  3076.  
  3077. 770
  3078. 00:30:15,670 --> 00:30:20,230
  3079. data in RAM that contains all of your
  3080.  
  3081. 771
  3082. 00:30:18,099 --> 00:30:22,689
  3083. geometry there's a specific set of
  3084.  
  3085. 772
  3086. 00:30:20,230 --> 00:30:25,750
  3087. formats you can use their variations on
  3088.  
  3089. 773
  3090. 00:30:22,690 --> 00:30:28,240
  3091. the same BVH concept then in your shader
  3092.  
  3093. 774
  3094. 00:30:25,750 --> 00:30:30,369
  3095. program you use a new instruction that
  3096.  
  3097. 775
  3098. 00:30:28,240 --> 00:30:33,730
  3099. asks the intersection engine to check
  3100.  
  3101. 776
  3102. 00:30:30,369 --> 00:30:35,589
  3103. array against the BVH while the
  3104.  
  3105. 777
  3106. 00:30:33,730 --> 00:30:37,539
  3107. intersection engine is processing the
  3108.  
  3109. 778
  3110. 00:30:35,589 --> 00:30:39,970
  3111. requested ray triangle or ray box
  3112.  
  3113. 779
  3114. 00:30:37,539 --> 00:30:42,250
  3115. intersections the shaders are free to do
  3116.  
  3117. 780
  3118. 00:30:39,970 --> 00:30:43,900
  3119. other work having said that the ray
  3120.  
  3121. 781
  3122. 00:30:42,250 --> 00:30:46,569
  3123. tracing instruction is pretty memory
  3124.  
  3125. 782
  3126. 00:30:43,900 --> 00:30:49,690
  3127. intensive so it's a good mix with logic
  3128.  
  3129. 783
  3130. 00:30:46,569 --> 00:30:51,939
  3131. heavy code there's of course no need to
  3132.  
  3133. 784
  3134. 00:30:49,690 --> 00:30:54,580
  3135. use ray tracing ps4 graphics engines
  3136.  
  3137. 785
  3138. 00:30:51,940 --> 00:30:56,860
  3139. will run just fine on PlayStation 5 but
  3140.  
  3141. 786
  3142. 00:30:54,579 --> 00:30:59,349
  3143. it presents an opportunity for those
  3144.  
  3145. 787
  3146. 00:30:56,859 --> 00:31:01,418
  3147. interested I'm thinking it'll
  3148.  
  3149. 788
  3150. 00:30:59,349 --> 00:31:03,308
  3151. take less than a million raise a second
  3152.  
  3153. 789
  3154. 00:31:01,419 --> 00:31:05,169
  3155. to have a big impact on audio that
  3156.  
  3157. 790
  3158. 00:31:03,308 --> 00:31:07,960
  3159. should be enough for audio occlusion and
  3160.  
  3161. 791
  3162. 00:31:05,169 --> 00:31:10,120
  3163. some reverb calculations with a bit more
  3164.  
  3165. 792
  3166. 00:31:07,960 --> 00:31:11,769
  3167. of the GPU invested in ray-tracing it
  3168.  
  3169. 793
  3170. 00:31:10,119 --> 00:31:13,769
  3171. should be possible to do some very nice
  3172.  
  3173. 794
  3174. 00:31:11,769 --> 00:31:16,660
  3175. global illumination
  3176.  
  3177. 795
  3178. 00:31:13,769 --> 00:31:18,819
  3179. having said that adding ray-traced
  3180.  
  3181. 796
  3182. 00:31:16,660 --> 00:31:20,590
  3183. shadows and reflections to a traditional
  3184.  
  3185. 797
  3186. 00:31:18,819 --> 00:31:22,720
  3187. graphics engine could easily take
  3188.  
  3189. 798
  3190. 00:31:20,589 --> 00:31:24,730
  3191. hundreds of millions of rays a second
  3192.  
  3193. 799
  3194. 00:31:22,720 --> 00:31:27,579
  3195. and full ray tracing could take billions
  3196.  
  3197. 800
  3198. 00:31:24,730 --> 00:31:28,900
  3199. how far can we go I'm starting to get
  3200.  
  3201. 801
  3202. 00:31:27,579 --> 00:31:31,298
  3203. quite bullish I've already seen a
  3204.  
  3205. 802
  3206. 00:31:28,900 --> 00:31:33,309
  3207. PlayStation 5 title that's successfully
  3208.  
  3209. 803
  3210. 00:31:31,298 --> 00:31:36,308
  3211. using ray tracing based reflections in
  3212.  
  3213. 804
  3214. 00:31:33,308 --> 00:31:39,220
  3215. complex animated scenes with only modest
  3216.  
  3217. 805
  3218. 00:31:36,308 --> 00:31:42,548
  3219. costs another set of issues for the GPU
  3220.  
  3221. 806
  3222. 00:31:39,220 --> 00:31:44,798
  3223. involved size and frequency how big do
  3224.  
  3225. 807
  3226. 00:31:42,548 --> 00:31:47,168
  3227. we make the GPU and what frequency do we
  3228.  
  3229. 808
  3230. 00:31:44,798 --> 00:31:48,700
  3231. run it at this is a balancing act the
  3232.  
  3233. 809
  3234. 00:31:47,169 --> 00:31:50,950
  3235. chip has a cost and there's a cost for
  3236.  
  3237. 810
  3238. 00:31:48,700 --> 00:31:53,919
  3239. whatever we use to supply that chip with
  3240.  
  3241. 811
  3242. 00:31:50,950 --> 00:31:56,080
  3243. power and to cool it in general I like
  3244.  
  3245. 812
  3246. 00:31:53,919 --> 00:32:00,309
  3247. running the GPU at a higher frequency
  3248.  
  3249. 813
  3250. 00:31:56,079 --> 00:32:02,349
  3251. let me show you why here's two possible
  3252.  
  3253. 814
  3254. 00:32:00,308 --> 00:32:04,928
  3255. configurations for a GPU roughly of the
  3256.  
  3257. 815
  3258. 00:32:02,349 --> 00:32:06,369
  3259. level of the PlayStation 4 Pro this is a
  3260.  
  3261. 816
  3262. 00:32:04,929 --> 00:32:09,038
  3263. thought experiment don't take these
  3264.  
  3265. 817
  3266. 00:32:06,369 --> 00:32:11,168
  3267. configurations too seriously if you just
  3268.  
  3269. 818
  3270. 00:32:09,038 --> 00:32:13,960
  3271. calculate teraflops you get the same
  3272.  
  3273. 819
  3274. 00:32:11,169 --> 00:32:16,179
  3275. number but actually the performance is
  3276.  
  3277. 820
  3278. 00:32:13,960 --> 00:32:17,700
  3279. noticeably different because teraflops
  3280.  
  3281. 821
  3282. 00:32:16,179 --> 00:32:21,130
  3283. is defined as the computational
  3284.  
  3285. 822
  3286. 00:32:17,700 --> 00:32:23,380
  3287. capability of the vector ALU that's just
  3288.  
  3289. 823
  3290. 00:32:21,130 --> 00:32:25,809
  3291. one part of the GPU there are a lot of
  3292.  
  3293. 824
  3294. 00:32:23,380 --> 00:32:28,000
  3295. other units and those other units all
  3296.  
  3297. 825
  3298. 00:32:25,808 --> 00:32:30,908
  3299. run faster when the GPU frequency is
  3300.  
  3301. 826
  3302. 00:32:28,000 --> 00:32:34,359
  3303. higher at 33% higher frequency
  3304.  
  3305. 827
  3306. 00:32:30,909 --> 00:32:37,000
  3307. rasterization goes 33% faster processing
  3308.  
  3309. 828
  3310. 00:32:34,359 --> 00:32:40,269
  3311. the command buffer goes that much faster
  3312.  
  3313. 829
  3314. 00:32:37,000 --> 00:32:41,919
  3315. the l2 and other caches have that much
  3316.  
  3317. 830
  3318. 00:32:40,269 --> 00:32:44,288
  3319. higher bandwidth and so on
  3320.  
  3321. 831
  3322. 00:32:41,919 --> 00:32:46,870
  3323. about the only downside is that system
  3324.  
  3325. 832
  3326. 00:32:44,288 --> 00:32:49,690
  3327. memory is 33% further away in terms of
  3328.  
  3329. 833
  3330. 00:32:46,869 --> 00:32:51,788
  3331. cycles but the large number of benefits
  3332.  
  3333. 834
  3334. 00:32:49,690 --> 00:32:54,610
  3335. more than counterbalanced that as a
  3336.  
  3337. 835
  3338. 00:32:51,788 --> 00:32:58,419
  3339. friend of mine says a rising tide lifts
  3340.  
  3341. 836
  3342. 00:32:54,609 --> 00:33:01,418
  3343. all boats also it's easier to fully use
  3344.  
  3345. 837
  3346. 00:32:58,419 --> 00:33:04,299
  3347. 36c use in parallel than it is to fully
  3348.  
  3349. 838
  3350. 00:33:01,419 --> 00:33:06,520
  3351. use 48c use when triangles are small
  3352.  
  3353. 839
  3354. 00:33:04,298 --> 00:33:09,339
  3355. it's much harder to fill although sea
  3356.  
  3357. 840
  3358. 00:33:06,519 --> 00:33:11,650
  3359. use with useful work so there's a lot to
  3360.  
  3361. 841
  3362. 00:33:09,339 --> 00:33:12,799
  3363. be said for faster assuming you can
  3364.  
  3365. 842
  3366. 00:33:11,650 --> 00:33:15,650
  3367. handle the resulting
  3368.  
  3369. 843
  3370. 00:33:12,799 --> 00:33:18,019
  3371. power and heat issues which frankly we
  3372.  
  3373. 844
  3374. 00:33:15,650 --> 00:33:19,700
  3375. haven't always done the best Java
  3376.  
  3377. 845
  3378. 00:33:18,019 --> 00:33:22,279
  3379. part of the reason for that is
  3380.  
  3381. 846
  3382. 00:33:19,700 --> 00:33:24,289
  3383. historically our process for setting CPU
  3384.  
  3385. 847
  3386. 00:33:22,279 --> 00:33:26,029
  3387. and GPU frequencies has relied on some
  3388.  
  3389. 848
  3390. 00:33:24,289 --> 00:33:28,069
  3391. heavy duty guesswork with regards to how
  3392.  
  3393. 849
  3394. 00:33:26,029 --> 00:33:30,200
  3395. much electrical power games will consume
  3396.  
  3397. 850
  3398. 00:33:28,069 --> 00:33:33,079
  3399. and how much heat will be produced as a
  3400.  
  3401. 851
  3402. 00:33:30,200 --> 00:33:35,150
  3403. result inside of the console power
  3404.  
  3405. 852
  3406. 00:33:33,079 --> 00:33:37,579
  3407. consumption varies a lot from game to
  3408.  
  3409. 853
  3410. 00:33:35,150 --> 00:33:40,009
  3411. game when I play god of war on my ps4
  3412.  
  3413. 854
  3414. 00:33:37,579 --> 00:33:42,919
  3415. Pro I know the power consumption is high
  3416.  
  3417. 855
  3418. 00:33:40,009 --> 00:33:45,349
  3419. just by the fan noise but power isn't
  3420.  
  3421. 856
  3422. 00:33:42,920 --> 00:33:46,880
  3423. simply about engine quality it's about
  3424.  
  3425. 857
  3426. 00:33:45,349 --> 00:33:49,730
  3427. the minutiae of what's being displayed
  3428.  
  3429. 858
  3430. 00:33:46,880 --> 00:33:51,890
  3431. and how it's counterintuitive but
  3432.  
  3433. 859
  3434. 00:33:49,730 --> 00:33:53,509
  3435. processing dense geometry typically
  3436.  
  3437. 860
  3438. 00:33:51,890 --> 00:33:56,390
  3439. consumes less power than processing
  3440.  
  3441. 861
  3442. 00:33:53,509 --> 00:33:58,819
  3443. simple geometry which is I suspect why
  3444.  
  3445. 862
  3446. 00:33:56,390 --> 00:34:01,910
  3447. horizons map screen with its low
  3448.  
  3449. 863
  3450. 00:33:58,819 --> 00:34:05,629
  3451. triangle count makes my ps4 pro heat up
  3452.  
  3453. 864
  3454. 00:34:01,910 --> 00:34:07,070
  3455. so much our process on previous consoles
  3456.  
  3457. 865
  3458. 00:34:05,630 --> 00:34:09,289
  3459. has been to try to guess what the
  3460.  
  3461. 866
  3462. 00:34:07,069 --> 00:34:11,569
  3463. maximum power consumption during the
  3464.  
  3465. 867
  3466. 00:34:09,289 --> 00:34:14,210
  3467. entire console lifetime might be which
  3468.  
  3469. 868
  3470. 00:34:11,570 --> 00:34:17,269
  3471. is to say the worst case scene in the
  3472.  
  3473. 869
  3474. 00:34:14,210 --> 00:34:19,429
  3475. worst case game and prepare a cooling
  3476.  
  3477. 870
  3478. 00:34:17,269 --> 00:34:22,969
  3479. solution that we think will be quiet at
  3480.  
  3481. 871
  3482. 00:34:19,429 --> 00:34:25,340
  3483. that power level if we get it right fan
  3484.  
  3485. 872
  3486. 00:34:22,969 --> 00:34:27,109
  3487. noise is minimal if we get it wrong the
  3488.  
  3489. 873
  3490. 00:34:25,340 --> 00:34:28,880
  3491. console will be quite loud for the
  3492.  
  3493. 874
  3494. 00:34:27,110 --> 00:34:30,289
  3495. higher power games and there's even a
  3496.  
  3497. 875
  3498. 00:34:28,880 --> 00:34:33,880
  3499. chance that it might overheat and shut
  3500.  
  3501. 876
  3502. 00:34:30,289 --> 00:34:36,168
  3503. down if we miss estimate power too badly
  3504.  
  3505. 877
  3506. 00:34:33,880 --> 00:34:39,829
  3507. PlayStation 5 is especially challenging
  3508.  
  3509. 878
  3510. 00:34:36,168 --> 00:34:41,889
  3511. because the CPU supports 256 bit native
  3512.  
  3513. 879
  3514. 00:34:39,829 --> 00:34:44,389
  3515. instructions that consume a lot of power
  3516.  
  3517. 880
  3518. 00:34:41,889 --> 00:34:47,539
  3519. these are great here and there but
  3520.  
  3521. 881
  3522. 00:34:44,389 --> 00:34:50,599
  3523. presumably only minimally used or are
  3524.  
  3525. 882
  3526. 00:34:47,539 --> 00:34:53,090
  3527. they if we plan for major 256 bit
  3528.  
  3529. 883
  3530. 00:34:50,599 --> 00:34:55,489
  3531. instruction usage we need to set the CPU
  3532.  
  3533. 884
  3534. 00:34:53,090 --> 00:34:57,410
  3535. clock substantially lower or noticeably
  3536.  
  3537. 885
  3538. 00:34:55,489 --> 00:35:01,669
  3539. increase the size of the power supply
  3540.  
  3541. 886
  3542. 00:34:57,409 --> 00:35:03,440
  3543. and fan so after much discussion we
  3544.  
  3545. 887
  3546. 00:35:01,670 --> 00:35:06,800
  3547. decided to go with a very different
  3548.  
  3549. 888
  3550. 00:35:03,440 --> 00:35:11,389
  3551. direction on PlayStation 5 we built a
  3552.  
  3553. 889
  3554. 00:35:06,800 --> 00:35:14,120
  3555. GPU with 36c use mind you our DNA to see
  3556.  
  3557. 890
  3558. 00:35:11,389 --> 00:35:15,739
  3559. use our large each has 62% more
  3560.  
  3561. 891
  3562. 00:35:14,119 --> 00:35:18,469
  3563. transistors than the CIE use we were
  3564.  
  3565. 892
  3566. 00:35:15,739 --> 00:35:21,559
  3567. using on PlayStation 4 so if we compare
  3568.  
  3569. 893
  3570. 00:35:18,469 --> 00:35:24,409
  3571. transistor counts 36 our DNA to see use
  3572.  
  3573. 894
  3574. 00:35:21,559 --> 00:35:26,329
  3575. equates to roughly 58 PlayStation 4 C
  3576.  
  3577. 895
  3578. 00:35:24,409 --> 00:35:29,779
  3579. use it is a fairly
  3580.  
  3581. 896
  3582. 00:35:26,329 --> 00:35:31,909
  3583. sizeable GPU then we went with a
  3584.  
  3585. 897
  3586. 00:35:29,780 --> 00:35:33,890
  3587. variable frequency strategy for
  3588.  
  3589. 898
  3590. 00:35:31,909 --> 00:35:36,799
  3591. PlayStation 5 which is to say we
  3592.  
  3593. 899
  3594. 00:35:33,889 --> 00:35:39,679
  3595. continuously run the GPU and CPU in
  3596.  
  3597. 900
  3598. 00:35:36,800 --> 00:35:41,840
  3599. boost mode we supply a generous amount
  3600.  
  3601. 901
  3602. 00:35:39,679 --> 00:35:44,269
  3603. of electrical power and then increase
  3604.  
  3605. 902
  3606. 00:35:41,840 --> 00:35:46,100
  3607. the frequency of GPU and CPU until they
  3608.  
  3609. 903
  3610. 00:35:44,269 --> 00:35:48,679
  3611. reach the capabilities of the system's
  3612.  
  3613. 904
  3614. 00:35:46,099 --> 00:35:50,719
  3615. cooling solution it's a completely
  3616.  
  3617. 905
  3618. 00:35:48,679 --> 00:35:52,759
  3619. different paradigm rather than running
  3620.  
  3621. 906
  3622. 00:35:50,719 --> 00:35:55,129
  3623. at constant frequency and letting power
  3624.  
  3625. 907
  3626. 00:35:52,760 --> 00:35:57,170
  3627. vary based on the workload we run at
  3628.  
  3629. 908
  3630. 00:35:55,130 --> 00:35:59,059
  3631. essentially constant power and let the
  3632.  
  3633. 909
  3634. 00:35:57,170 --> 00:36:02,300
  3635. frequency band vary based on the
  3636.  
  3637. 910
  3638. 00:35:59,059 --> 00:36:04,009
  3639. workload we then tackled the engineering
  3640.  
  3641. 911
  3642. 00:36:02,300 --> 00:36:05,630
  3643. challenge of a cost-effective and
  3644.  
  3645. 912
  3646. 00:36:04,010 --> 00:36:08,300
  3647. high-performance cooling solution
  3648.  
  3649. 913
  3650. 00:36:05,630 --> 00:36:10,400
  3651. designed for that specific power level
  3652.  
  3653. 914
  3654. 00:36:08,300 --> 00:36:11,810
  3655. in some ways it becomes a simpler
  3656.  
  3657. 915
  3658. 00:36:10,400 --> 00:36:14,240
  3659. problem because there are no more
  3660.  
  3661. 916
  3662. 00:36:11,809 --> 00:36:16,190
  3663. unknowns there's no need to guess what
  3664.  
  3665. 917
  3666. 00:36:14,239 --> 00:36:18,979
  3667. power consumption the worst case game
  3668.  
  3669. 918
  3670. 00:36:16,190 --> 00:36:21,019
  3671. might have as for the details of the
  3672.  
  3673. 919
  3674. 00:36:18,980 --> 00:36:22,699
  3675. cooling solution we're saving them for
  3676.  
  3677. 920
  3678. 00:36:21,019 --> 00:36:24,409
  3679. our teardown I think you'll be quite
  3680.  
  3681. 921
  3682. 00:36:22,699 --> 00:36:28,609
  3683. happy with what the engineering team
  3684.  
  3685. 922
  3686. 00:36:24,409 --> 00:36:31,579
  3687. came up with so how fast can we run the
  3688.  
  3689. 923
  3690. 00:36:28,610 --> 00:36:33,200
  3691. GPU and CPU with this strategy the
  3692.  
  3693. 924
  3694. 00:36:31,579 --> 00:36:35,210
  3695. simplest approach would be to look at
  3696.  
  3697. 925
  3698. 00:36:33,199 --> 00:36:36,980
  3699. the actual temperature of the silicon
  3700.  
  3701. 926
  3702. 00:36:35,210 --> 00:36:39,409
  3703. die and throttle the frequency on that
  3704.  
  3705. 927
  3706. 00:36:36,980 --> 00:36:41,210
  3707. basis but that won't work it fails to
  3708.  
  3709. 928
  3710. 00:36:39,409 --> 00:36:43,579
  3711. create a consistent PlayStation 5
  3712.  
  3713. 929
  3714. 00:36:41,210 --> 00:36:45,740
  3715. experience it wouldn't do to run a
  3716.  
  3717. 930
  3718. 00:36:43,579 --> 00:36:48,529
  3719. console slower simply because it was in
  3720.  
  3721. 931
  3722. 00:36:45,739 --> 00:36:50,750
  3723. a hot room so rather than look at the
  3724.  
  3725. 932
  3726. 00:36:48,530 --> 00:36:53,000
  3727. actual temperature of the silicon die we
  3728.  
  3729. 933
  3730. 00:36:50,750 --> 00:36:54,980
  3731. look at the activities that the GPU and
  3732.  
  3733. 934
  3734. 00:36:53,000 --> 00:36:56,989
  3735. CPU are performing and set the
  3736.  
  3737. 935
  3738. 00:36:54,980 --> 00:36:59,380
  3739. frequencies on that basis which makes
  3740.  
  3741. 936
  3742. 00:36:56,989 --> 00:37:02,269
  3743. everything deterministic and repeatable
  3744.  
  3745. 937
  3746. 00:36:59,380 --> 00:37:04,369
  3747. while we're at it we also use AMD's
  3748.  
  3749. 938
  3750. 00:37:02,269 --> 00:37:07,610
  3751. smart shift technology and send any
  3752.  
  3753. 939
  3754. 00:37:04,369 --> 00:37:10,699
  3755. unused power from the CPU to the GPU so
  3756.  
  3757. 940
  3758. 00:37:07,610 --> 00:37:13,370
  3759. it can squeeze out a few more pixels the
  3760.  
  3761. 941
  3762. 00:37:10,699 --> 00:37:16,849
  3763. benefits of this strategy are quite
  3764.  
  3765. 942
  3766. 00:37:13,369 --> 00:37:18,889
  3767. large running a GPU at two gigahertz was
  3768.  
  3769. 943
  3770. 00:37:16,849 --> 00:37:21,380
  3771. looking like an unreachable target with
  3772.  
  3773. 944
  3774. 00:37:18,889 --> 00:37:23,900
  3775. the old fixed frequency strategy with
  3776.  
  3777. 945
  3778. 00:37:21,380 --> 00:37:26,510
  3779. this new paradigm we're able to run way
  3780.  
  3781. 946
  3782. 00:37:23,900 --> 00:37:28,340
  3783. over that in fact we have to cap the GPU
  3784.  
  3785. 947
  3786. 00:37:26,510 --> 00:37:30,230
  3787. frequency at two point two three
  3788.  
  3789. 948
  3790. 00:37:28,340 --> 00:37:35,000
  3791. gigahertz so that we can guarantee that
  3792.  
  3793. 949
  3794. 00:37:30,230 --> 00:37:37,190
  3795. the on chip logic operates properly 36c
  3796.  
  3797. 950
  3798. 00:37:35,000 --> 00:37:38,889
  3799. use at two point two three gigahertz is
  3800.  
  3801. 951
  3802. 00:37:37,190 --> 00:37:41,380
  3803. ten point three teraflops
  3804.  
  3805. 952
  3806. 00:37:38,889 --> 00:37:44,108
  3807. and we expect the GPU to spend most of
  3808.  
  3809. 953
  3810. 00:37:41,380 --> 00:37:45,450
  3811. its time at or close to that frequency
  3812.  
  3813. 954
  3814. 00:37:44,108 --> 00:37:48,219
  3815. and performance
  3816.  
  3817. 955
  3818. 00:37:45,449 --> 00:37:49,989
  3819. similarly running the CPU at 3 gigahertz
  3820.  
  3821. 956
  3822. 00:37:48,219 --> 00:37:52,689
  3823. was causing headaches with the old
  3824.  
  3825. 957
  3826. 00:37:49,989 --> 00:37:55,750
  3827. strategy but now we can run it as high
  3828.  
  3829. 958
  3830. 00:37:52,690 --> 00:37:59,170
  3831. as 3.5 gigahertz in fact it spends most
  3832.  
  3833. 959
  3834. 00:37:55,750 --> 00:38:00,909
  3835. of its time at that frequency that
  3836.  
  3837. 960
  3838. 00:37:59,170 --> 00:38:03,430
  3839. doesn't mean all games will be running
  3840.  
  3841. 961
  3842. 00:38:00,909 --> 00:38:06,308
  3843. in 2.2 3 gigahertz and 3.5 gigahertz
  3844.  
  3845. 962
  3846. 00:38:03,429 --> 00:38:09,068
  3847. when that worst case game arrives it
  3848.  
  3849. 963
  3850. 00:38:06,309 --> 00:38:11,650
  3851. will run at a lower clock speed but not
  3852.  
  3853. 964
  3854. 00:38:09,068 --> 00:38:13,420
  3855. too much lower to reduce power by 10% it
  3856.  
  3857. 965
  3858. 00:38:11,650 --> 00:38:15,250
  3859. only takes a couple of percent reduction
  3860.  
  3861. 966
  3862. 00:38:13,420 --> 00:38:17,889
  3863. in frequency so I'd expect any down
  3864.  
  3865. 967
  3866. 00:38:15,250 --> 00:38:19,539
  3867. clocking to be pretty minor all things
  3868.  
  3869. 968
  3870. 00:38:17,889 --> 00:38:21,818
  3871. considered the change to a variable
  3872.  
  3873. 969
  3874. 00:38:19,539 --> 00:38:24,579
  3875. frequency approach will show significant
  3876.  
  3877. 970
  3878. 00:38:21,818 --> 00:38:26,048
  3879. gains for PlayStation gamers the final
  3880.  
  3881. 971
  3882. 00:38:24,579 --> 00:38:28,720
  3883. of our three principals was about
  3884.  
  3885. 972
  3886. 00:38:26,048 --> 00:38:30,969
  3887. finding new dreams it's important for us
  3888.  
  3889. 973
  3890. 00:38:28,719 --> 00:38:33,818
  3891. on the hardware team to find new ways to
  3892.  
  3893. 974
  3894. 00:38:30,969 --> 00:38:37,959
  3895. expand or deepen gaming and that's what
  3896.  
  3897. 975
  3898. 00:38:33,818 --> 00:38:39,489
  3899. led us to a focus on 3d audio as players
  3900.  
  3901. 976
  3902. 00:38:37,960 --> 00:38:41,318
  3903. we experience the game through the
  3904.  
  3905. 977
  3906. 00:38:39,489 --> 00:38:43,000
  3907. visuals through audio and through the
  3908.  
  3909. 978
  3910. 00:38:41,318 --> 00:38:46,028
  3911. feedback we received from the controller
  3912.  
  3913. 979
  3914. 00:38:43,000 --> 00:38:48,099
  3915. such as Rumble or haptics personally I
  3916.  
  3917. 980
  3918. 00:38:46,028 --> 00:38:50,858
  3919. feel a game is just dead without audio
  3920.  
  3921. 981
  3922. 00:38:48,099 --> 00:38:54,160
  3923. visuals are of course important but the
  3924.  
  3925. 982
  3926. 00:38:50,858 --> 00:38:55,869
  3927. impact of audio is huge as well at the
  3928.  
  3929. 983
  3930. 00:38:54,159 --> 00:38:57,578
  3931. same time the audio team on a game
  3932.  
  3933. 984
  3934. 00:38:55,869 --> 00:38:59,890
  3935. project has to do a lot with a little
  3936.  
  3937. 985
  3938. 00:38:57,579 --> 00:39:02,200
  3939. for example on PlayStation 4 there's
  3940.  
  3941. 986
  3942. 00:38:59,889 --> 00:39:04,538
  3943. fierce competition for the Jaguar CPU
  3944.  
  3945. 987
  3946. 00:39:02,199 --> 00:39:07,358
  3947. cores audio typically ends up getting
  3948.  
  3949. 988
  3950. 00:39:04,539 --> 00:39:09,220
  3951. just a fraction of a core that's not
  3952.  
  3953. 989
  3954. 00:39:07,358 --> 00:39:11,170
  3955. much of a computational resource
  3956.  
  3957. 990
  3958. 00:39:09,219 --> 00:39:13,750
  3959. particularly when you consider that the
  3960.  
  3961. 991
  3962. 00:39:11,170 --> 00:39:16,000
  3963. visuals run at 30 or 60 frames a second
  3964.  
  3965. 992
  3966. 00:39:13,750 --> 00:39:20,469
  3967. but audio processing needs to happen at
  3968.  
  3969. 993
  3970. 00:39:16,000 --> 00:39:22,358
  3971. almost 200 times a second so it's been
  3972.  
  3973. 994
  3974. 00:39:20,469 --> 00:39:23,768
  3975. tough going making forward progress on
  3976.  
  3977. 995
  3978. 00:39:22,358 --> 00:39:26,170
  3979. audio with Playstation 4
  3980.  
  3981. 996
  3982. 00:39:23,768 --> 00:39:29,169
  3983. particularly when PlayStation 3 was such
  3984.  
  3985. 997
  3986. 00:39:26,170 --> 00:39:31,210
  3987. a beast when it came to audio the SPU's
  3988.  
  3989. 998
  3990. 00:39:29,170 --> 00:39:33,430
  3991. and cell were almost a perfect device
  3992.  
  3993. 999
  3994. 00:39:31,210 --> 00:39:35,318
  3995. for audio rendering simple pipeline
  3996.  
  3997. 1000
  3998. 00:39:33,429 --> 00:39:37,838
  3999. algorithms could really take advantage
  4000.  
  4001. 1001
  4002. 00:39:35,318 --> 00:39:39,818
  4003. of asynchronous DMA and frequently
  4004.  
  4005. 1002
  4006. 00:39:37,838 --> 00:39:41,588
  4007. reached a hundred percent utilization of
  4008.  
  4009. 1003
  4010. 00:39:39,818 --> 00:39:43,420
  4011. the floating-point unit there's
  4012.  
  4013. 1004
  4014. 00:39:41,588 --> 00:39:46,838
  4015. unfortunately nothing comparable on
  4016.  
  4017. 1005
  4018. 00:39:43,420 --> 00:39:49,119
  4019. PlayStation 4 probably the most dramatic
  4020.  
  4021. 1006
  4022. 00:39:46,838 --> 00:39:51,788
  4023. progress in the PlayStation 4 generation
  4024.  
  4025. 1007
  4026. 00:39:49,119 --> 00:39:52,559
  4027. has been with Virtual Reality the PSB
  4028.  
  4029. 1008
  4030. 00:39:51,789 --> 00:39:54,990
  4031. are hard
  4032.  
  4033. 1009
  4034. 00:39:52,559 --> 00:39:57,539
  4035. has its own audio unit it supports about
  4036.  
  4037. 1010
  4038. 00:39:54,989 --> 00:40:00,029
  4039. fifty pretty decent 3d sound sources and
  4040.  
  4041. 1011
  4042. 00:39:57,539 --> 00:40:02,070
  4043. this provided a hint as to where we
  4044.  
  4045. 1012
  4046. 00:40:00,030 --> 00:40:05,400
  4047. could go with audio as well as some
  4048.  
  4049. 1013
  4050. 00:40:02,070 --> 00:40:08,280
  4051. valuable experience not to oversimplify
  4052.  
  4053. 1014
  4054. 00:40:05,400 --> 00:40:11,309
  4055. but here were our goals for audio on
  4056.  
  4057. 1015
  4058. 00:40:08,280 --> 00:40:14,220
  4059. PlayStation 5 the first goal was great
  4060.  
  4061. 1016
  4062. 00:40:11,309 --> 00:40:16,529
  4063. audio for everyone not just VR users or
  4064.  
  4065. 1017
  4066. 00:40:14,219 --> 00:40:18,000
  4067. sound bar owners or headphone users that
  4068.  
  4069. 1018
  4070. 00:40:16,530 --> 00:40:18,570
  4071. meant audio had to be part of the
  4072.  
  4073. 1019
  4074. 00:40:18,000 --> 00:40:21,599
  4075. console
  4076.  
  4077. 1020
  4078. 00:40:18,570 --> 00:40:23,490
  4079. it couldn't be a peripheral the second
  4080.  
  4081. 1021
  4082. 00:40:21,599 --> 00:40:25,440
  4083. goal was to support hundreds of sound
  4084.  
  4085. 1022
  4086. 00:40:23,489 --> 00:40:27,449
  4087. sources we didn't want developers to
  4088.  
  4089. 1023
  4090. 00:40:25,440 --> 00:40:29,220
  4091. have to pick and choose what sounds
  4092.  
  4093. 1024
  4094. 00:40:27,449 --> 00:40:31,529
  4095. would get 3d effects and which wouldn't
  4096.  
  4097. 1025
  4098. 00:40:29,219 --> 00:40:34,709
  4099. we wanted every sound in the game to
  4100.  
  4101. 1026
  4102. 00:40:31,530 --> 00:40:37,050
  4103. have dimensionality and finally we
  4104.  
  4105. 1027
  4106. 00:40:34,710 --> 00:40:40,650
  4107. wanted to really take on the challenges
  4108.  
  4109. 1028
  4110. 00:40:37,050 --> 00:40:42,930
  4111. of presence and locality now when we say
  4112.  
  4113. 1029
  4114. 00:40:40,650 --> 00:40:45,660
  4115. presence we mean the feeling that you're
  4116.  
  4117. 1030
  4118. 00:40:42,929 --> 00:40:47,849
  4119. actually there you've entered the matrix
  4120.  
  4121. 1031
  4122. 00:40:45,659 --> 00:40:49,799
  4123. it's not of course something we thought
  4124.  
  4125. 1032
  4126. 00:40:47,849 --> 00:40:51,750
  4127. we could perfectly achieve but the idea
  4128.  
  4129. 1033
  4130. 00:40:49,800 --> 00:40:54,750
  4131. was that if we stopped using just a rain
  4132.  
  4133. 1034
  4134. 00:40:51,750 --> 00:40:56,579
  4135. sound and instead use lots of 3d audio
  4136.  
  4137. 1035
  4138. 00:40:54,750 --> 00:40:58,530
  4139. sources for raindrops hitting the ground
  4140.  
  4141. 1036
  4142. 00:40:56,579 --> 00:41:00,809
  4143. at all sorts of locations around you
  4144.  
  4145. 1037
  4146. 00:40:58,530 --> 00:41:02,430
  4147. then at some point your brain would take
  4148.  
  4149. 1038
  4150. 00:41:00,809 --> 00:41:05,579
  4151. a leap and you'd begin to have this
  4152.  
  4153. 1039
  4154. 00:41:02,429 --> 00:41:07,259
  4155. feeling this feeling of real presence
  4156.  
  4157. 1040
  4158. 00:41:05,579 --> 00:41:09,869
  4159. inside the virtual world of the game
  4160.  
  4161. 1041
  4162. 00:41:07,260 --> 00:41:12,570
  4163. this has the capacity to affect your
  4164.  
  4165. 1042
  4166. 00:41:09,869 --> 00:41:16,349
  4167. appreciation of the game just like music
  4168.  
  4169. 1043
  4170. 00:41:12,570 --> 00:41:18,300
  4171. in a game does the concept of locality
  4172.  
  4173. 1044
  4174. 00:41:16,349 --> 00:41:20,400
  4175. is simpler it's just your sense of where
  4176.  
  4177. 1045
  4178. 00:41:18,300 --> 00:41:22,710
  4179. the audio is coming from to the right of
  4180.  
  4181. 1046
  4182. 00:41:20,400 --> 00:41:24,809
  4183. you behind you above you this can
  4184.  
  4185. 1047
  4186. 00:41:22,710 --> 00:41:27,619
  4187. immerse you further in the game and it
  4188.  
  4189. 1048
  4190. 00:41:24,809 --> 00:41:30,989
  4191. can also directly enhance the gameplay
  4192.  
  4193. 1049
  4194. 00:41:27,619 --> 00:41:33,690
  4195. to use dead space as an example I know
  4196.  
  4197. 1050
  4198. 00:41:30,989 --> 00:41:37,109
  4199. old school you're fighting enemies in
  4200.  
  4201. 1051
  4202. 00:41:33,690 --> 00:41:38,970
  4203. fairly dark spooky locations back in the
  4204.  
  4205. 1052
  4206. 00:41:37,110 --> 00:41:40,500
  4207. day if you played the game using the TV
  4208.  
  4209. 1053
  4210. 00:41:38,969 --> 00:41:42,539
  4211. speakers you could tell that there was
  4212.  
  4213. 1054
  4214. 00:41:40,500 --> 00:41:44,699
  4215. one last enemy growling and hunting you
  4216.  
  4217. 1055
  4218. 00:41:42,539 --> 00:41:47,550
  4219. down but it was difficult to tell quite
  4220.  
  4221. 1056
  4222. 00:41:44,699 --> 00:41:49,379
  4223. where that enemy was with headphones you
  4224.  
  4225. 1057
  4226. 00:41:47,550 --> 00:41:51,210
  4227. can tell that the enemy was somewhere on
  4228.  
  4229. 1058
  4230. 00:41:49,380 --> 00:41:52,710
  4231. the right which lets you deduce if you
  4232.  
  4233. 1059
  4234. 00:41:51,210 --> 00:41:55,769
  4235. couldn't see it that it must be
  4236.  
  4237. 1060
  4238. 00:41:52,710 --> 00:41:58,019
  4239. somewhere behind and to your right but
  4240.  
  4241. 1061
  4242. 00:41:55,769 --> 00:42:00,179
  4243. with 3d audio with good locality the
  4244.  
  4245. 1062
  4246. 00:41:58,019 --> 00:42:03,980
  4247. idea is you know the enemy is precisely
  4248.  
  4249. 1063
  4250. 00:42:00,179 --> 00:42:06,839
  4251. there and you turn and you take it out
  4252.  
  4253. 1064
  4254. 00:42:03,980 --> 00:42:09,929
  4255. so how do we know where a sound is
  4256.  
  4257. 1065
  4258. 00:42:06,840 --> 00:42:12,120
  4259. coming from in the first place well all
  4260.  
  4261. 1066
  4262. 00:42:09,929 --> 00:42:14,699
  4263. those bumps and folds in the ear have a
  4264.  
  4265. 1067
  4266. 00:42:12,119 --> 00:42:16,109
  4267. meaning evolutionarily speaking based on
  4268.  
  4269. 1068
  4270. 00:42:14,699 --> 00:42:18,299
  4271. what direction the sound is coming from
  4272.  
  4273. 1069
  4274. 00:42:16,110 --> 00:42:19,860
  4275. sound waves bounce around inside the ear
  4276.  
  4277. 1070
  4278. 00:42:18,300 --> 00:42:21,720
  4279. there's some constructive and
  4280.  
  4281. 1071
  4282. 00:42:19,860 --> 00:42:24,599
  4283. destructive interference and the result
  4284.  
  4285. 1072
  4286. 00:42:21,719 --> 00:42:26,669
  4287. is a change in volume the phase of the
  4288.  
  4289. 1073
  4290. 00:42:24,599 --> 00:42:28,559
  4291. sound also shifts depending on what path
  4292.  
  4293. 1074
  4294. 00:42:26,670 --> 00:42:31,500
  4295. the sound wave took to reach the ear
  4296.  
  4297. 1075
  4298. 00:42:28,559 --> 00:42:33,269
  4299. canal these volume changes and phase
  4300.  
  4301. 1076
  4302. 00:42:31,500 --> 00:42:35,940
  4303. shifts are different for each direction
  4304.  
  4305. 1077
  4306. 00:42:33,269 --> 00:42:38,670
  4307. and also vary depending on the frequency
  4308.  
  4309. 1078
  4310. 00:42:35,940 --> 00:42:40,740
  4311. of the sound head size and head shape
  4312.  
  4313. 1079
  4314. 00:42:38,670 --> 00:42:43,289
  4315. also impact the sound in a similar
  4316.  
  4317. 1080
  4318. 00:42:40,739 --> 00:42:45,719
  4319. fashion the way that the sound changes
  4320.  
  4321. 1081
  4322. 00:42:43,289 --> 00:42:47,279
  4323. based on direction and frequency can be
  4324.  
  4325. 1082
  4326. 00:42:45,719 --> 00:42:50,129
  4327. encoded in a table called the head
  4328.  
  4329. 1083
  4330. 00:42:47,280 --> 00:42:53,010
  4331. related transfer function or HR TF
  4332.  
  4333. 1084
  4334. 00:42:50,130 --> 00:42:55,680
  4335. here's part of one the vertical axis is
  4336.  
  4337. 1085
  4338. 00:42:53,010 --> 00:42:57,750
  4339. the frequency the horizontal axis is the
  4340.  
  4341. 1086
  4342. 00:42:55,679 --> 00:43:00,149
  4343. direction front back left right and the
  4344.  
  4345. 1087
  4346. 00:42:57,750 --> 00:43:03,539
  4347. color gives the degree of attenuation of
  4348.  
  4349. 1088
  4350. 00:43:00,150 --> 00:43:05,760
  4351. the sound at that frequency the HRT F is
  4352.  
  4353. 1089
  4354. 00:43:03,539 --> 00:43:07,980
  4355. as unique to an individual as a
  4356.  
  4357. 1090
  4358. 00:43:05,760 --> 00:43:10,920
  4359. fingerprint is in fact you're looking at
  4360.  
  4361. 1091
  4362. 00:43:07,980 --> 00:43:13,199
  4363. mine right now here is how we measure in
  4364.  
  4365. 1092
  4366. 00:43:10,920 --> 00:43:15,809
  4367. h RTF we've taken hundreds of people
  4368.  
  4369. 1093
  4370. 00:43:13,199 --> 00:43:17,969
  4371. through this process we put a microphone
  4372.  
  4373. 1094
  4374. 00:43:15,809 --> 00:43:21,269
  4375. in the subjects left and right ear
  4376.  
  4377. 1095
  4378. 00:43:17,969 --> 00:43:24,389
  4379. canals and then sit the subject down in
  4380.  
  4381. 1096
  4382. 00:43:21,269 --> 00:43:26,639
  4383. the middle of an array of 22 speakers we
  4384.  
  4385. 1097
  4386. 00:43:24,389 --> 00:43:29,400
  4387. then play an audio sweep from each
  4388.  
  4389. 1098
  4390. 00:43:26,639 --> 00:43:31,139
  4391. speaker as we rotate the subject in the
  4392.  
  4393. 1099
  4394. 00:43:29,400 --> 00:43:34,019
  4395. course of ten or twenty minutes we're
  4396.  
  4397. 1100
  4398. 00:43:31,139 --> 00:43:37,049
  4399. able to sample the H RTF at over 1,000
  4400.  
  4401. 1101
  4402. 00:43:34,019 --> 00:43:39,480
  4403. locations using an H RTF when rendering
  4404.  
  4405. 1102
  4406. 00:43:37,050 --> 00:43:42,330
  4407. audio creates unparalleled quality but
  4408.  
  4409. 1103
  4410. 00:43:39,480 --> 00:43:44,340
  4411. it's computationally expensive the
  4412.  
  4413. 1104
  4414. 00:43:42,329 --> 00:43:46,409
  4415. simplest way to use an H RTF is to
  4416.  
  4417. 1105
  4418. 00:43:44,340 --> 00:43:47,700
  4419. process a sound source to make it appear
  4420.  
  4421. 1106
  4422. 00:43:46,409 --> 00:43:49,909
  4423. as if it's coming from one of those
  4424.  
  4425. 1107
  4426. 00:43:47,699 --> 00:43:51,989
  4427. thousand locations we sample
  4428.  
  4429. 1108
  4430. 00:43:49,909 --> 00:43:53,699
  4431. unfortunately the processing has to be
  4432.  
  4433. 1109
  4434. 00:43:51,989 --> 00:43:55,709
  4435. done in frequency domain rather than
  4436.  
  4437. 1110
  4438. 00:43:53,699 --> 00:43:57,359
  4439. time domain so there's multiple fast
  4440.  
  4441. 1111
  4442. 00:43:55,710 --> 00:43:59,670
  4443. Fourier transforms needed for every
  4444.  
  4445. 1112
  4446. 00:43:57,360 --> 00:44:03,210
  4447. sound source for every audio tech that's
  4448.  
  4449. 1113
  4450. 00:43:59,670 --> 00:44:04,950
  4451. a lot of multiplies this computational
  4452.  
  4453. 1114
  4454. 00:44:03,210 --> 00:44:06,960
  4455. complexity was the determining factor
  4456.  
  4457. 1115
  4458. 00:44:04,949 --> 00:44:08,969
  4459. for our strategy Ament we had to bite
  4460.  
  4461. 1116
  4462. 00:44:06,960 --> 00:44:11,820
  4463. the bullet and design and build a custom
  4464.  
  4465. 1117
  4466. 00:44:08,969 --> 00:44:13,529
  4467. hardware unit for 3d audio collectively
  4468.  
  4469. 1118
  4470. 00:44:11,820 --> 00:44:16,230
  4471. we're referring to the hardware unit and
  4472.  
  4473. 1119
  4474. 00:44:13,530 --> 00:44:20,220
  4475. the proprietary algorithms we run on it
  4476.  
  4477. 1120
  4478. 00:44:16,230 --> 00:44:22,170
  4479. tempest 3d audio Tech the meaning of 3d
  4480.  
  4481. 1121
  4482. 00:44:20,219 --> 00:44:23,009
  4483. audio and technology should be pretty
  4484.  
  4485. 1122
  4486. 00:44:22,170 --> 00:44:25,860
  4487. obvious here
  4488.  
  4489. 1123
  4490. 00:44:23,010 --> 00:44:28,020
  4491. as for tempest I feel it really reflects
  4492.  
  4493. 1124
  4494. 00:44:25,860 --> 00:44:30,599
  4495. our goals with audio it suggests a
  4496.  
  4497. 1125
  4498. 00:44:28,019 --> 00:44:32,849
  4499. certain intensity of experience and also
  4500.  
  4501. 1126
  4502. 00:44:30,599 --> 00:44:34,589
  4503. hints at your presence within it we're
  4504.  
  4505. 1127
  4506. 00:44:32,849 --> 00:44:37,319
  4507. calling the hardware unit that we built
  4508.  
  4509. 1128
  4510. 00:44:34,590 --> 00:44:40,079
  4511. the tempest engine it's based on AMD's
  4512.  
  4513. 1129
  4514. 00:44:37,320 --> 00:44:42,510
  4515. GPU technology we modified a compute
  4516.  
  4517. 1130
  4518. 00:44:40,079 --> 00:44:44,789
  4519. unit in such a way as to make it very
  4520.  
  4521. 1131
  4522. 00:44:42,510 --> 00:44:46,320
  4523. close to the SPU is in PlayStation 3
  4524.  
  4525. 1132
  4526. 00:44:44,789 --> 00:44:49,440
  4527. remember when I said that they were
  4528.  
  4529. 1133
  4530. 00:44:46,320 --> 00:44:52,590
  4531. ideal for audio so the tempest engine
  4532.  
  4533. 1134
  4534. 00:44:49,440 --> 00:44:56,490
  4535. has no caches just like an SPU all data
  4536.  
  4537. 1135
  4538. 00:44:52,590 --> 00:44:58,680
  4539. access is via DMA just like an SPU our
  4540.  
  4541. 1136
  4542. 00:44:56,489 --> 00:45:01,079
  4543. target was that it would have more power
  4544.  
  4545. 1137
  4546. 00:44:58,679 --> 00:45:03,449
  4547. than a CPU thanks to the parallelism
  4548.  
  4549. 1138
  4550. 00:45:01,079 --> 00:45:05,639
  4551. that a GPU can achieve and then it would
  4552.  
  4553. 1139
  4554. 00:45:03,449 --> 00:45:08,309
  4555. be more efficient than our GPU thanks to
  4556.  
  4557. 1140
  4558. 00:45:05,639 --> 00:45:10,799
  4559. the SPU like architecture the goal being
  4560.  
  4561. 1141
  4562. 00:45:08,309 --> 00:45:15,029
  4563. to make possible near 100% utilization
  4564.  
  4565. 1142
  4566. 00:45:10,800 --> 00:45:17,730
  4567. of the C use vector units where we ended
  4568.  
  4569. 1143
  4570. 00:45:15,030 --> 00:45:20,220
  4571. up is a unit with roughly the same sim D
  4572.  
  4573. 1144
  4574. 00:45:17,730 --> 00:45:22,889
  4575. power and bandwidth as all eight Jaguar
  4576.  
  4577. 1145
  4578. 00:45:20,219 --> 00:45:24,750
  4579. cores in the PlayStation 4 combined if
  4580.  
  4581. 1146
  4582. 00:45:22,889 --> 00:45:27,049
  4583. we were to use the same algorithms as
  4584.  
  4585. 1147
  4586. 00:45:24,750 --> 00:45:30,030
  4587. psvr that's enough for something like
  4588.  
  4589. 1148
  4590. 00:45:27,050 --> 00:45:32,010
  4591. 5,000 sound sources but of course we
  4592.  
  4593. 1149
  4594. 00:45:30,030 --> 00:45:34,260
  4595. want to use more complex algorithms and
  4596.  
  4597. 1150
  4598. 00:45:32,010 --> 00:45:37,650
  4599. we don't need anything like that number
  4600.  
  4601. 1151
  4602. 00:45:34,260 --> 00:45:40,200
  4603. of sounds it would have been wonderful
  4604.  
  4605. 1152
  4606. 00:45:37,650 --> 00:45:42,360
  4607. if a simpler strategy such as using
  4608.  
  4609. 1153
  4610. 00:45:40,199 --> 00:45:44,129
  4611. Dolby Atmos peripherals could have
  4612.  
  4613. 1154
  4614. 00:45:42,360 --> 00:45:46,170
  4615. achieved our goals but we wanted 3d
  4616.  
  4617. 1155
  4618. 00:45:44,130 --> 00:45:49,170
  4619. audio for all not just those with
  4620.  
  4621. 1156
  4622. 00:45:46,170 --> 00:45:50,849
  4623. licensed sound bars or the like also we
  4624.  
  4625. 1157
  4626. 00:45:49,170 --> 00:45:52,800
  4627. wanted many hundreds of sound sources
  4628.  
  4629. 1158
  4630. 00:45:50,849 --> 00:45:55,079
  4631. not just the 32 that at most supports
  4632.  
  4633. 1159
  4634. 00:45:52,800 --> 00:45:57,180
  4635. and finally we wanted to be able to
  4636.  
  4637. 1160
  4638. 00:45:55,079 --> 00:45:59,039
  4639. throw an overwhelming amount of
  4640.  
  4641. 1161
  4642. 00:45:57,179 --> 00:46:00,899
  4643. processing power at the problem and it
  4644.  
  4645. 1162
  4646. 00:45:59,039 --> 00:46:03,869
  4647. wasn't clear what any peripheral might
  4648.  
  4649. 1163
  4650. 00:46:00,900 --> 00:46:04,710
  4651. have inside of it in fact with the
  4652.  
  4653. 1164
  4654. 00:46:03,869 --> 00:46:06,630
  4655. tempest engine
  4656.  
  4657. 1165
  4658. 00:46:04,710 --> 00:46:08,940
  4659. we've even got enough power that we can
  4660.  
  4661. 1166
  4662. 00:46:06,630 --> 00:46:10,490
  4663. allocate some to the games to the extent
  4664.  
  4665. 1167
  4666. 00:46:08,940 --> 00:46:13,110
  4667. that games want to make use of
  4668.  
  4669. 1168
  4670. 00:46:10,489 --> 00:46:14,429
  4671. convolution reverb and other algorithms
  4672.  
  4673. 1169
  4674. 00:46:13,110 --> 00:46:17,370
  4675. that are either computationally
  4676.  
  4677. 1170
  4678. 00:46:14,429 --> 00:46:19,679
  4679. expensive or need high bandwidth but the
  4680.  
  4681. 1171
  4682. 00:46:17,369 --> 00:46:24,539
  4683. primary purpose of the tempest engine
  4684.  
  4685. 1172
  4686. 00:46:19,679 --> 00:46:27,089
  4687. remains 3d audio now 3d audio is a major
  4688.  
  4689. 1173
  4690. 00:46:24,539 --> 00:46:28,670
  4691. academic research topic it's safe to say
  4692.  
  4693. 1174
  4694. 00:46:27,090 --> 00:46:30,440
  4695. that no one in the world
  4696.  
  4697. 1175
  4698. 00:46:28,670 --> 00:46:32,480
  4699. all of the answers and the set of
  4700.  
  4701. 1176
  4702. 00:46:30,440 --> 00:46:34,400
  4703. algorithms that has to be invented tuned
  4704.  
  4705. 1177
  4706. 00:46:32,480 --> 00:46:38,780
  4707. or implemented to realize our vision for
  4708.  
  4709. 1178
  4710. 00:46:34,400 --> 00:46:42,108
  4711. 3d audio is immense for example use of
  4712.  
  4713. 1179
  4714. 00:46:38,780 --> 00:46:43,910
  4715. HR TFS in games is quite complex before
  4716.  
  4717. 1180
  4718. 00:46:42,108 --> 00:46:46,519
  4719. I talked about making a sound source
  4720.  
  4721. 1181
  4722. 00:46:43,909 --> 00:46:48,889
  4723. appear as if it's coming from one of
  4724.  
  4725. 1182
  4726. 00:46:46,519 --> 00:46:52,309
  4727. those thousand HR TF sample locations
  4728.  
  4729. 1183
  4730. 00:46:48,889 --> 00:46:54,650
  4731. but for high quality 3d game audio we
  4732.  
  4733. 1184
  4734. 00:46:52,309 --> 00:46:56,450
  4735. have to handle other possibilities the
  4736.  
  4737. 1185
  4738. 00:46:54,650 --> 00:46:58,460
  4739. sound source might not be at one of the
  4740.  
  4741. 1186
  4742. 00:46:56,449 --> 00:47:01,039
  4743. thousand HR TF sample locations so we
  4744.  
  4745. 1187
  4746. 00:46:58,460 --> 00:47:02,990
  4747. have to blend the HR TF data from the
  4748.  
  4749. 1188
  4750. 00:47:01,039 --> 00:47:05,150
  4751. closest locations that we have sampled
  4752.  
  4753. 1189
  4754. 00:47:02,989 --> 00:47:07,098
  4755. the sound source might be moving which
  4756.  
  4757. 1190
  4758. 00:47:05,150 --> 00:47:09,139
  4759. needs very special handling as that
  4760.  
  4761. 1191
  4762. 00:47:07,099 --> 00:47:11,510
  4763. blend keeps changing and that can cause
  4764.  
  4765. 1192
  4766. 00:47:09,139 --> 00:47:14,389
  4767. phase artifacts in the resulting audio
  4768.  
  4769. 1193
  4770. 00:47:11,510 --> 00:47:16,069
  4771. or the sound source might have a size to
  4772.  
  4773. 1194
  4774. 00:47:14,389 --> 00:47:18,618
  4775. it meaning it should feel as if it's
  4776.  
  4777. 1195
  4778. 00:47:16,068 --> 00:47:22,159
  4779. coming from an area rather than a single
  4780.  
  4781. 1196
  4782. 00:47:18,619 --> 00:47:24,440
  4783. point there's also whole categories of
  4784.  
  4785. 1197
  4786. 00:47:22,159 --> 00:47:26,779
  4787. approaches to be handled 3d audio can be
  4788.  
  4789. 1198
  4790. 00:47:24,440 --> 00:47:29,510
  4791. implemented using individual processing
  4792.  
  4793. 1199
  4794. 00:47:26,780 --> 00:47:31,670
  4795. of 3d sound sources but alternatively
  4796.  
  4797. 1200
  4798. 00:47:29,510 --> 00:47:33,890
  4799. ambisonics can be used for 3d audio
  4800.  
  4801. 1201
  4802. 00:47:31,670 --> 00:47:36,170
  4803. ambisonics speak somewhat like the
  4804.  
  4805. 1202
  4806. 00:47:33,889 --> 00:47:38,420
  4807. spherical harmonics used in computer
  4808.  
  4809. 1203
  4810. 00:47:36,170 --> 00:47:40,548
  4811. graphics and finally there's audio
  4812.  
  4813. 1204
  4814. 00:47:38,420 --> 00:47:42,619
  4815. devices the player might be using
  4816.  
  4817. 1205
  4818. 00:47:40,548 --> 00:47:44,358
  4819. headphones or TV speakers or have a
  4820.  
  4821. 1206
  4822. 00:47:42,619 --> 00:47:46,490
  4823. higher end surround sound set up with
  4824.  
  4825. 1207
  4826. 00:47:44,358 --> 00:47:49,338
  4827. six or more speakers all of which need
  4828.  
  4829. 1208
  4830. 00:47:46,489 --> 00:47:51,259
  4831. different approaches that's a lot of
  4832.  
  4833. 1209
  4834. 00:47:49,338 --> 00:47:53,269
  4835. variations it's nice to have the
  4836.  
  4837. 1210
  4838. 00:47:51,260 --> 00:47:55,460
  4839. computational resources of the tempest
  4840.  
  4841. 1211
  4842. 00:47:53,269 --> 00:47:57,440
  4843. engine but it's clear that achieving our
  4844.  
  4845. 1212
  4846. 00:47:55,460 --> 00:48:00,220
  4847. ultimate goals with 3d audio is going to
  4848.  
  4849. 1213
  4850. 00:47:57,440 --> 00:48:02,389
  4851. be a multi-year step-by-step process
  4852.  
  4853. 1214
  4854. 00:48:00,219 --> 00:48:04,519
  4855. having said that headphone audio
  4856.  
  4857. 1215
  4858. 00:48:02,389 --> 00:48:06,769
  4859. implementation is largely complete at
  4860.  
  4861. 1216
  4862. 00:48:04,519 --> 00:48:08,420
  4863. this time it was a natural place for us
  4864.  
  4865. 1217
  4866. 00:48:06,769 --> 00:48:10,219
  4867. to start with headphones we control
  4868.  
  4869. 1218
  4870. 00:48:08,420 --> 00:48:12,260
  4871. exactly what each ear hears and
  4872.  
  4873. 1219
  4874. 00:48:10,219 --> 00:48:13,699
  4875. therefore the algorithmic development
  4876.  
  4877. 1220
  4878. 00:48:12,260 --> 00:48:16,849
  4879. and implementation are more
  4880.  
  4881. 1221
  4882. 00:48:13,699 --> 00:48:18,679
  4883. straightforward for TV speakers and
  4884.  
  4885. 1222
  4886. 00:48:16,849 --> 00:48:21,230
  4887. stereo speakers were in the process of
  4888.  
  4889. 1223
  4890. 00:48:18,679 --> 00:48:22,969
  4891. implementing virtual surround sound the
  4892.  
  4893. 1224
  4894. 00:48:21,230 --> 00:48:25,250
  4895. idea being that if you're sitting in a
  4896.  
  4897. 1225
  4898. 00:48:22,969 --> 00:48:26,899
  4899. sweet spot in front of the TV then the
  4900.  
  4901. 1226
  4902. 00:48:25,250 --> 00:48:28,880
  4903. sound can be made to feel as if it's
  4904.  
  4905. 1227
  4906. 00:48:26,900 --> 00:48:29,650
  4907. coming from any direction even behind
  4908.  
  4909. 1228
  4910. 00:48:28,880 --> 00:48:32,000
  4911. you
  4912.  
  4913. 1229
  4914. 00:48:29,650 --> 00:48:34,130
  4915. virtual surround sound has a lot in
  4916.  
  4917. 1230
  4918. 00:48:32,000 --> 00:48:37,130
  4919. common with 3d audio on headphones but
  4920.  
  4921. 1231
  4922. 00:48:34,130 --> 00:48:38,630
  4923. it's more complex because the left ear
  4924.  
  4925. 1232
  4926. 00:48:37,130 --> 00:48:40,880
  4927. can hear the right speaker and
  4928.  
  4929. 1233
  4930. 00:48:38,630 --> 00:48:42,619
  4931. vice-versa we have a basic
  4932.  
  4933. 1234
  4934. 00:48:40,880 --> 00:48:44,150
  4935. implementation of virtual surround
  4936.  
  4937. 1235
  4938. 00:48:42,619 --> 00:48:46,160
  4939. up and running we're now looking at
  4940.  
  4941. 1236
  4942. 00:48:44,150 --> 00:48:48,588
  4943. increasing the size of that sweet spot
  4944.  
  4945. 1237
  4946. 00:48:46,159 --> 00:48:51,259
  4947. which is to say making the area you need
  4948.  
  4949. 1238
  4950. 00:48:48,588 --> 00:48:53,119
  4951. to be in to feel the 3d effect larger
  4952.  
  4953. 1239
  4954. 00:48:51,259 --> 00:48:56,358
  4955. and we're also working to boost the
  4956.  
  4957. 1240
  4958. 00:48:53,119 --> 00:48:58,309
  4959. sense of locality headphone audio is the
  4960.  
  4961. 1241
  4962. 00:48:56,358 --> 00:49:00,139
  4963. current gold standard for 3d audio on
  4964.  
  4965. 1242
  4966. 00:48:58,309 --> 00:49:01,910
  4967. playstation 5 but we're going to see
  4968.  
  4969. 1243
  4970. 00:49:00,139 --> 00:49:04,608
  4971. what we can do to bring virtual surround
  4972.  
  4973. 1244
  4974. 00:49:01,909 --> 00:49:06,440
  4975. sound to a similar level after which
  4976.  
  4977. 1245
  4978. 00:49:04,608 --> 00:49:08,150
  4979. we'll start in on setups with more
  4980.  
  4981. 1246
  4982. 00:49:06,440 --> 00:49:10,729
  4983. speakers such as 6 channel surround
  4984.  
  4985. 1247
  4986. 00:49:08,150 --> 00:49:12,139
  4987. sound it's now to the point where some
  4988.  
  4989. 1248
  4990. 00:49:10,728 --> 00:49:13,998
  4991. of the playstation 5 games in
  4992.  
  4993. 1249
  4994. 00:49:12,139 --> 00:49:16,308
  4995. development are extensively using these
  4996.  
  4997. 1250
  4998. 00:49:13,998 --> 00:49:17,718
  4999. systems one of the game demos allows you
  5000.  
  5001. 1251
  5002. 00:49:16,309 --> 00:49:20,690
  5003. to toggle between conventional
  5004.  
  5005. 1252
  5006. 00:49:17,719 --> 00:49:23,539
  5007. PlayStation 4 style stereo audio and our
  5008.  
  5009. 1253
  5010. 00:49:20,690 --> 00:49:25,309
  5011. new 3d audio I listened with just an
  5012.  
  5013. 1254
  5014. 00:49:23,539 --> 00:49:27,710
  5015. ordinary pair of over the Year
  5016.  
  5017. 1255
  5018. 00:49:25,309 --> 00:49:30,289
  5019. headphones and wow I could feel a
  5020.  
  5021. 1256
  5022. 00:49:27,710 --> 00:49:32,210
  5023. difference 3d audio has that dimensional
  5024.  
  5025. 1257
  5026. 00:49:30,289 --> 00:49:35,329
  5027. feel to it conventional stereo audio
  5028.  
  5029. 1258
  5030. 00:49:32,210 --> 00:49:38,749
  5031. feels smashed flat by comparison the
  5032.  
  5033. 1259
  5034. 00:49:35,329 --> 00:49:40,910
  5035. improvement is obvious so a big
  5036.  
  5037. 1260
  5038. 00:49:38,748 --> 00:49:43,308
  5039. advancement but have I entered the
  5040.  
  5041. 1261
  5042. 00:49:40,909 --> 00:49:45,139
  5043. matrix does my brain believe I'm really
  5044.  
  5045. 1262
  5046. 00:49:43,309 --> 00:49:47,778
  5047. there like I was talking about earlier
  5048.  
  5049. 1263
  5050. 00:49:45,139 --> 00:49:50,690
  5051. when I explained our target of presence
  5052.  
  5053. 1264
  5054. 00:49:47,778 --> 00:49:52,489
  5055. well the answer is no but you've
  5056.  
  5057. 1265
  5058. 00:49:50,690 --> 00:49:55,548
  5059. probably caught on to what's missing
  5060.  
  5061. 1266
  5062. 00:49:52,489 --> 00:49:58,880
  5063. here namely whose HRT F was being used
  5064.  
  5065. 1267
  5066. 00:49:55,548 --> 00:50:01,159
  5067. it wasn't mine it was the default HRT F
  5068.  
  5069. 1268
  5070. 00:49:58,880 --> 00:50:02,539
  5071. the audio team analyzed the hundreds
  5072.  
  5073. 1269
  5074. 00:50:01,159 --> 00:50:04,248
  5075. that they measured and chose the one
  5076.  
  5077. 1270
  5078. 00:50:02,539 --> 00:50:06,920
  5079. they felt with the closest fit to the
  5080.  
  5081. 1271
  5082. 00:50:04,248 --> 00:50:09,439
  5083. total game playing audience this shows a
  5084.  
  5085. 1272
  5086. 00:50:06,920 --> 00:50:11,838
  5087. piece of the default HRT F on the left
  5088.  
  5089. 1273
  5090. 00:50:09,440 --> 00:50:13,338
  5091. and my HRT F on the right you can see
  5092.  
  5093. 1274
  5094. 00:50:11,838 --> 00:50:16,239
  5095. that the general features are much the
  5096.  
  5097. 1275
  5098. 00:50:13,338 --> 00:50:19,369
  5099. same but the details are quite different
  5100.  
  5101. 1276
  5102. 00:50:16,239 --> 00:50:21,739
  5103. with the default HRT F as I said the 3d
  5104.  
  5105. 1277
  5106. 00:50:19,369 --> 00:50:24,619
  5107. audio sounds pretty great when I use my
  5108.  
  5109. 1278
  5110. 00:50:21,739 --> 00:50:27,289
  5111. HRT F though the audio reaches a higher
  5112.  
  5113. 1279
  5114. 00:50:24,619 --> 00:50:30,160
  5115. level of realism which is to say that
  5116.  
  5117. 1280
  5118. 00:50:27,289 --> 00:50:32,690
  5119. when using headphones and my HRT F I
  5120.  
  5121. 1281
  5122. 00:50:30,159 --> 00:50:34,909
  5123. occasionally get fooled and even think a
  5124.  
  5125. 1282
  5126. 00:50:32,690 --> 00:50:38,019
  5127. sound is coming from the real world when
  5128.  
  5129. 1283
  5130. 00:50:34,909 --> 00:50:40,159
  5131. it's actually coming from the game a
  5132.  
  5133. 1284
  5134. 00:50:38,018 --> 00:50:42,498
  5135. corollary to this is that there are a
  5136.  
  5137. 1285
  5138. 00:50:40,159 --> 00:50:45,170
  5139. few people whose HRT FS are sufficiently
  5140.  
  5141. 1286
  5142. 00:50:42,498 --> 00:50:47,209
  5143. far from the default HRT F that's the
  5144.  
  5145. 1287
  5146. 00:50:45,170 --> 00:50:49,909
  5147. red dot here that they can toggle
  5148.  
  5149. 1288
  5150. 00:50:47,210 --> 00:50:52,849
  5151. between ps4 style and PS 5 style audio
  5152.  
  5153. 1289
  5154. 00:50:49,909 --> 00:50:55,518
  5155. and not sense much difference I've had a
  5156.  
  5157. 1290
  5158. 00:50:52,849 --> 00:50:56,450
  5159. few people describe the playstation 5 3d
  5160.  
  5161. 1291
  5162. 00:50:55,518 --> 00:50:58,719
  5163. audio is sounding
  5164.  
  5165. 1292
  5166. 00:50:56,449 --> 00:51:00,889
  5167. like a bit better stereo audio
  5168.  
  5169. 1293
  5170. 00:50:58,719 --> 00:51:04,789
  5171. presumably they're the ones at the very
  5172.  
  5173. 1294
  5174. 00:51:00,889 --> 00:51:07,368
  5175. edges of this diagram which means what
  5176.  
  5177. 1295
  5178. 00:51:04,789 --> 00:51:08,989
  5179. HRT F you're using is key I'd like
  5180.  
  5181. 1296
  5182. 00:51:07,369 --> 00:51:11,150
  5183. everyone to be able to experience what
  5184.  
  5185. 1297
  5186. 00:51:08,989 --> 00:51:13,549
  5187. I'm experiencing but obviously it's not
  5188.  
  5189. 1298
  5190. 00:51:11,150 --> 00:51:16,369
  5191. possible to measure the HRT F of every
  5192.  
  5193. 1299
  5194. 00:51:13,550 --> 00:51:18,740
  5195. PlayStation user that means HRT F
  5196.  
  5197. 1300
  5198. 00:51:16,369 --> 00:51:21,170
  5199. selection and synthesis are going to be
  5200.  
  5201. 1301
  5202. 00:51:18,739 --> 00:51:24,139
  5203. big topics going forward as the tempest
  5204.  
  5205. 1302
  5206. 00:51:21,170 --> 00:51:26,150
  5207. technology matures at PlayStation 5
  5208.  
  5209. 1303
  5210. 00:51:24,139 --> 00:51:28,730
  5211. launch will be offering a choice of five
  5212.  
  5213. 1304
  5214. 00:51:26,150 --> 00:51:29,869
  5215. HRT FS there's a simple test where you
  5216.  
  5217. 1305
  5218. 00:51:28,730 --> 00:51:32,179
  5219. pick the one that gives you the best
  5220.  
  5221. 1306
  5222. 00:51:29,869 --> 00:51:34,430
  5223. locality that's just the first step
  5224.  
  5225. 1307
  5226. 00:51:32,179 --> 00:51:37,129
  5227. though this is an open-ended research
  5228.  
  5229. 1308
  5230. 00:51:34,429 --> 00:51:39,139
  5231. topic maybe you'll be sending us a photo
  5232.  
  5233. 1309
  5234. 00:51:37,130 --> 00:51:41,630
  5235. of your ear and we'll choose a neural
  5236.  
  5237. 1310
  5238. 00:51:39,139 --> 00:51:43,670
  5239. network to pick the closest HRT F in our
  5240.  
  5241. 1311
  5242. 00:51:41,630 --> 00:51:45,950
  5243. library maybe you'll be sending us a
  5244.  
  5245. 1312
  5246. 00:51:43,670 --> 00:51:47,690
  5247. video of your ears and your head and
  5248.  
  5249. 1313
  5250. 00:51:45,949 --> 00:51:50,480
  5251. we'll make a 3d model of them and
  5252.  
  5253. 1314
  5254. 00:51:47,690 --> 00:51:53,179
  5255. synthesize the HRT F maybe you'll play
  5256.  
  5257. 1315
  5258. 00:51:50,480 --> 00:51:55,639
  5259. an audio game to tune your HRT F will be
  5260.  
  5261. 1316
  5262. 00:51:53,179 --> 00:51:57,529
  5263. subtly changing it as you play and home
  5264.  
  5265. 1317
  5266. 00:51:55,639 --> 00:51:59,509
  5267. in on the HRT F that gives you the
  5268.  
  5269. 1318
  5270. 00:51:57,530 --> 00:52:02,900
  5271. highest score meaning that it matches
  5272.  
  5273. 1319
  5274. 00:51:59,510 --> 00:52:04,579
  5275. you the best this is a journey we'll all
  5276.  
  5277. 1320
  5278. 00:52:02,900 --> 00:52:04,940
  5279. be taking together over the next few
  5280.  
  5281. 1321
  5282. 00:52:04,579 --> 00:52:06,950
  5283. years
  5284.  
  5285. 1322
  5286. 00:52:04,940 --> 00:52:09,260
  5287. ultimately we're committing to enabling
  5288.  
  5289. 1323
  5290. 00:52:06,949 --> 00:52:13,549
  5291. everyone to experience that next level
  5292.  
  5293. 1324
  5294. 00:52:09,260 --> 00:52:15,230
  5295. of realism hopefully I've been able to
  5296.  
  5297. 1325
  5298. 00:52:13,550 --> 00:52:17,599
  5299. illustrate a bit about our design and
  5300.  
  5301. 1326
  5302. 00:52:15,230 --> 00:52:19,550
  5303. decision making process today and why
  5304.  
  5305. 1327
  5306. 00:52:17,599 --> 00:52:21,920
  5307. PlayStation 5 has the feature set that
  5308.  
  5309. 1328
  5310. 00:52:19,550 --> 00:52:23,780
  5311. it does now comes the fun part we get to
  5312.  
  5313. 1329
  5314. 00:52:21,920 --> 00:52:26,420
  5315. see how the development community takes
  5316.  
  5317. 1330
  5318. 00:52:23,780 --> 00:52:28,579
  5319. advantage of that feature set I'm hoping
  5320.  
  5321. 1331
  5322. 00:52:26,420 --> 00:52:30,800
  5323. for the completely unexpected will it
  5324.  
  5325. 1332
  5326. 00:52:28,579 --> 00:52:33,050
  5327. come from audio ray-tracing the
  5328.  
  5329. 1333
  5330. 00:52:30,800 --> 00:52:36,130
  5331. capabilities of the SSD or something
  5332.  
  5333. 1334
  5334. 00:52:33,050 --> 00:52:40,510
  5335. else I guess we'll find out soon enough
  5336.  
  5337. 1335
  5338. 00:52:36,130 --> 00:52:40,510
  5339. thank you for your time today
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top