 How many of you guys, let's see if I can get this out. How many of you guys are following the America's Cup? So, I like to sail. And as I was following the Cup, I realized this is actually a great story, what I'm going to talk to you guys about heterogeneous computing. So it's one of the things that Qualcomm has been focusing on and I think it's very relevant to this community. And, you know, the concept is pretty simple, but I think this really explains it well because if you think about sailing, if you're in a little small boat and, you know, obviously, you're not going to win any big races or anything like that, you probably can get away with one or two people, maybe a houndsman, and, you know, you've got somebody who's going to be, you know, maybe doing one of the sails. That's about it. I was looking at the crew on one of these America's Cup boats. There's like 20 people on the boat. And each one of them has a certain skill and is doing something very different. And it kind of reminds me, when I used to do races, it wasn't both like this, obviously, but it was, you know, there's a guy on the foredeck who's doing, you know, he's the bowman and then there's a guy who's doing the mast. And each one of them is physically different. You know, the guy on the foredeck has got to be small and agile. The guy on the mast has got to be a big guy. Then you've got the tactician. You've got the helmsman. So everybody's doing something different. And that's what's happening in the mobile processor space, which is where we are at. There's tasks going to different processors. And as we're trying to push the speeds and trying to get the performance in these processors, that's become more and more important. So that's a big part of my talk. I thought I'd start with my little sailing story. Let's bring this up. So I think the idea is very simple. Now, I'm not here to teach you guys anything about Linux because, you know, my assumption is you guys all know more about more than I do about Linux. I started in computer engineering. I did some coding back then, played with Linux. Eventually I got into hardware design. So I was doing, you know, Verilog and FPGA and ASIC coding. And then that led me to more like PCV design. So I did a lot of that. Eventually got into product management. So what I'm going to tell you more about is as a Linux developer or somebody in the Linux community, what you need to know about Qualcomm, what we're doing in terms of processors that may be relevant to you. Now, obviously you guys know us for the mobile space, you know, being the processor in smartphones and tablets. A lot of that is changing. These processors are going into a lot of other things. And it so happens I manage our development platforms for Snapdragon. And I was purely focused when I started on the app developer community. But over time what happened was people were knocking on our door, asking for a processor, going into other things. So organically we started creating these platforms for these other things, the embedded space. And that's where we got more and more involved with the Linux community and, you know, started thinking about it and putting some tools in place and so on. So I'm going to tell you a bit about those things. And the goal of my session really is to give you some perspective into what we're doing in our processor space. Maybe some things that you guys can take advantage of. As this overall space is growing, there's going to be a lot of opportunity for developers to differentiate on hardware. So I'm going to give you a little bit about that. And then I'm going to show you some platforms that may be helpful and may be relevant to you. So if you get bored, if you are here for learning about Linux and you decide to leave, I encourage you to check out some of the developer tools and some of the boards that are available now based on the Snapdragon processor and also check out some of the new tools that we've been building on. So that's the key message. But if you stick around, I'm going to show you some cool stuff. So I like this slide because it kind of puts things into perspective as far as where we are now with the mobile space. The level of GPU power that you got, the level of CPU power, it's the type of apps that you're running on these processors. It's just gone crazy. I've been in this industry specifically for four years and it blows my mind. The type of things that you can do, and it's just not data, it's not connectivity, it's graphics, it's video, it's performance, just raw performance that you can take advantage of. So kind of a nice graphic there. And this is the other piece of it and this eventually is going to loop back into what I was telling you as far as what mobile has become. Now, two years ago, I was standing here telling you how we're going to give you the PC experience in mobile. So I was telling you, hey, you know, we can do the same things in graphics and this and that. Today, I'm telling you how you can get the mobile experience into other things, including PCs and all, because everybody now expects always connected. Everybody expects, you know, the battery life, power efficiency, regardless of what platform this is. It could be your TV, it could be your PC, it could be your kitchen gadgets. So the mobile experience now is the bar. Everybody is looking for that. You know, the numbers are staggering, right? You have these forecasts of 7 billion mobile devices from now to 2017 cumulative. So everybody who has a smartphone today add another 7 billion in the next four years of demand for these processes. So that's 4X, the shipments of PCs. And again, I talked about this. I don't know if you guys seen this video. This was a fun video. Yeah. This is life without mobile. Let's go. story comes into play, right? So as you're doing all this stuff on your mobile, and this is what Qualcomm has been investing obviously a lot of money in, we've been looking beyond the CPU, and it's so necessary, and I tell you why. Now, I'm going to play a little game. Now, if you think about the latest mobile SOCs that we're putting out today, what percentage of the whole SOC do you think is the CPU? 2%. Any other guesses? Okay, so kind of close. A lot of people think it's 75% or 80%. Actually, it turns out it's only 15%. That's where the CPU is. And what's happening is you've got now CPU, GPU, DSP, your video core, your camera core, all the multimedia stuff, the display processor, there's a navigation core, there's a sensor core, so there's a ton of cores that are actually working within the SOC. And I think what we can do to help push this thing forward is provide access and make it easy for the developers and for the community to take advantage of these cores. And this is the whole, I think this is the whole reason why you get a graph like this. This is how we can, at our level, at a low level, we can optimize, you know, the OS and all the things that we have control over to take advantage of these cores so we can do stuff like this. Whereas power is going up, you can see how we stack up in terms of performance per watt, right? And then the same thing can apply to you guys. You can get more performance, you can squeeze out more performance out of your code if you take advantage of some of the other cores besides the CPU that's in there. This is a cool graph, but I think at the end of the day, the software and the hardware and everything that is on top of it has to be optimized for the low level. And I think that's where we need you guys to come in. So we realize it takes just more than great hardware to build a great system. It requires great software. And that's why I'm here. And then obviously you get the Snapdragon chipset. And then the other piece of it, and this might be important as we think about hardware, is this level of power efficiency also leads into thermal efficiency. So as you think about some of these areas where these chips are going into, thermal is also very important. So that's another area where if you look at how we stack up in terms of our chip versus some of the competitors, you can see that it leads to obviously better cooling as was longer life for a lot of these devices. So Snapdragon 800. This is the new processor that we've come out with. I'm not going to go through all the features set, but just gives you an idea of some of the things that this chip can do. Now, one of the, besides the CPU, I talked about the Adreno GPU. So this is, and also the display processor that's in there. So this is again our own architecture for GPU. So we've brought a lot of things like FlexRender, OpenGL ES 3.0 support, OpenCL and RenderScript. And this really plays into this whole concept of, I'm going to talk about herogeneous computing, where some of these APIs that are going to take advantage of multiple cores, we got to have native support for those things. So OpenCL and RenderScript is one. There's another one, the LLVM compiler, which some of you guys may be familiar with. Again, having native support for that allows us to enable that level of optimization at the processor level. And you can see same thing. So I showed you kind of the overall performance, but you can see the same thing with the GPU as far as power efficiency and so on. So as, now this is the performance graph. I have another graph where it shows you the power efficiency. So same thing as performance has been going up. I mean, this is staggering, right? 43 and a half times the same processor that was in there in 2010. So in three years, we've gone 40X plus in terms of performance. It's mind blowing. And then this is something that you guys probably know about CPU, GPU. Some of you may not know we have a DSP inside the processor. And the DSP has allowed us to really enable things like CPU revision. So we have a library called FastCV that is optimized for this. And that's the same library that V4 uses. So if you guys are working on augmented reality, we've optimized the CPU revision algorithms using the DSP. We've done things like gesture recognition using the DSP, voice recognition using the DSP. So you can have this always on voice recognition without draining your battery. So that's another use of the DSP that we've enabled. And we have this hexagon, so the DSP is called hexagon. And we have this hexagon DSP access program, which allows you to get really at a low level. So besides the SDK, that's more geared towards the app developers, there's a DSP access program that's more for the low-level optimizations on the DSP. So that's another area to look into as far as things like, I mean, I have a few examples here, image processing, you know, doing voice quality, high-def audio, a lot of use cases for a dedicated DSP. More benchmarks, that kind of shows you, as you, so we went from hexagon DSP V5, which was one thread, to the new one, which is, or actually V5 does three threads, but you can see how the performance has gone up, just by multi-threading on the DSP itself. And then, you know, the other thing is, you know, you guys are gonna say, well, look, Leon, this is cool. You have a lot of, you know, nice stuff in the Snapdragon processor, but why do I care about it, and why do I go and optimize for it? Well, in the mobile space, and if you're targeting mobile, and, you know, I remember those days of Linux is not Android or Android is not Linux, that obviously is distant memory, so there's a lot of opportunity in the mobile space. But what I'm gonna show you is these processors are actually going into the embedded space, and Android and some of the Linux OS's that are already enabled on these processors are coming along for the ride. So, as you look at some of these, you know, gadgets and things that are like your TV or some of the industrial equipment that's running Linux, or even now running Android, because they have some touchscreen element to them, or something like that, the processors in the mobile space are actually finding their ways into those things because of the performance and because of the power efficiency. Now, this kind of sums it up before I get into the platforms and the hardware. This kind of sums it up as far as, okay, so this is our hardware, this is what Qualcomm does in the hardware space, and then this is what Qualcomm does in the software space, building these APIs and SDKs on top of it. These are the OS's that we support, and then this is where you guys come in. Okay, so this is what I talked about. This is now the segue from the mobile space to the embedded space. Now, the embedded guys obviously care about this. They care about power efficiency, they care about not having noise, not having fans, good thermals and all that, but they also care about performance and features. And as we've seen, and again, this is also mind blowing for me being in mobile space, is the performance and the features. I mean, we're running 4K video on a little SOC that goes into your mobile. So your mobile phone potentially can encode and decode better than your PC because you can capture in 4K and you can decode and you can play back in 4K. So a lot of stuff, and then you have sensors on top of that, you have location services, you have connectivity, and all of a sudden, you have a great embedded processor, especially if you're at a high end. If you're doing something computing intensive, you can take advantage of all this. Okay, so this brings me up to how we got into this whole embedded thing. So we created something a while back called Dragonboard, and the idea was we wanted to enable the hardware community. So these are the guys who are building Linux drivers for some new components that don't even exist. So if you came up with a new sensor, or if you came up with a new camera, or some kind of a new, you know, interface, we gave you a platform where you could connect that, you could build your Linux drivers and then integrate it, showcase it, optimize it, and eventually get that component into devices. And it works really well. So the, you know, the number of interfaces that we put on this is, you know, is crazy, right? Anything from JTAG to, you know, multiple, you know, I scored C general purpose, SATA, there's just about anything you can imagine. JTAG is on there. Now, what happened was unbeknownst to us, people were taking this and creating other things using this as a prototyping tool. So they were creating, you know, robots. They were creating, you know, digital signage. So a number of other things that we didn't, you know, we weren't playing in, we weren't, you know, we weren't putting pit chips in there and anything like that. And they came to us and said, look, I created this new device, or new application, and I want to take it to production. Now, the challenge there is the device was cool, the application was really cool. But in order to start a design off of this chip, it's obviously very expensive. So the way we enabled that was using what we call a production ready solve or system on a module. And the idea is that this is your standard connector. This is a Q7, I don't know if you guys know Q7, Q7 standard module with Snapdragon chip and all the critical components like memory and so on. So now all of a sudden you have a way to take your product all the way to commercialization. So that's sort of the little short story of how Qualcomm got into embedded and how we ended up sort of people knocking our door saying, hey, I want to put my chip in embedded and we said, okay, well, let's start with this module. This module is everything you need. And you can use this to prototype. And then eventually, you can go buy this module in any quantity you want for your product. So this kind of sums it up, right? This can be used by software technology vendors by hardware component vendors, and now by embedded vendors. So people who are putting this chip into other things. And then some of the areas where this is going. And obviously, this needs a lot of development activity for for things like robotics, digital signage, you know, video surveillance, kiosks, toys, even toys, ruggedized devices, handhelds and so on, that this chip is going into. So if you guys are thinking about potentially taking some of your development activity beyond whatever it is that that you're targeting today, I think there's a lot of opportunity with these mobile and it's not just I wouldn't say it's just snapdragon. I think the mobile processors in general are destined to power the future of embedded. And again, back to, you know, it's the same processor, but if you put it in the embedded context, you have, you know, your CPU power, you have your GPU power, you have your DSP, you have all the connectivity in the world that you want. 802.11 AC Wi-Fi, this is all integrated inside the chip. So if you were to build a module, and this module, for example, you don't need a separate Wi-Fi, you know, additional module, it's all integrated on the same chip. That is what it looks like. Now, it comes with Android preloaded, but as it turns out, and again, as we got into the embedded space, obviously a lot of people are using various versions of embedded Linux, things like Debian, Ubuntu. So some of the activity is going on right now is enabling, you know, embedded Linux variants on this board. And obviously, you know, with Linux Android on there, it's not very, it's not very hard to do. And we actually have some, some customers who are going to the company, actually, I should have mentioned the name of the company who did this company called Intrinsic. So they're working on Ubuntu versions of this, they're working on Debian versions of this for a particular application. And then again, back to the feature set. You know, there's a ton of interfaces, a ton of ways to expand this. So again, if you're depending on what you're doing, you may want to add storage, you may want to add displays, you may want to add different types of cameras. There's a company who, who had an application where they want to add three different cameras, they're doing some form of stereo vision. And again, that's one application where you can add three camera inputs. And we have the ISP, two ISPs actually in there that can support that, actually can support up to four cameras. So depending on the application, there's multiple ways to, to connect things to this and expand it. And I was reading, I was reading an article that took this code out. Again, it's talking about this whole concept of now embedded Android. So we always talked about mobile Android. But now everybody's talking about embedded Android. And Android going into these other things that maybe initially wasn't even intended to go to. And now people are finding it very easy if you have some form of touchscreen or some form of multimedia, that this is such a good way of enabling that. And if you don't have those things, if you're headless, again, multiple ports of Debian and Linux are now enabled on these processors that you can take advantage of. So this is growing so much. I know how many of you guys heard of Uplink. A couple of Qualcomm people have heard of it. But it's, so it's a conference we have in, in San Diego every year. And we bring bring a lot of developers, the OEMs, the carriers. And I think it's, it's a, it's quite a, it's a great opportunity to network, but also, you know, there's a lot of cool sessions. And we talk about some of the technologies. This year, we added on the first day of the conference, we added this program called the Hardware Day, bringing all these component vendors. And what they had done is they had gone and got one of these and they've enabled some new technology, some new component using this platform. And they were showcasing it, they had presentations. Go check it out. I mean, I took a few of these examples of what people had enabled using this platform and we were talking about it. And these are the type of things you're going to see a year or two years from now. And I always say, you know, I come from both the software background and hardware background. And, you know, we always talk about hardware is useless without software. The other way of looking at it, I think also is that if you had the same hardware every year, eventually you'll run out of ideas of what you can do with software, right? So part of what the intention of this was is, hey, you know what, there's all these new hardware technologies, new sensors, new ways of doing motion. This company had a magnetometer and an accelerometer sensor and they were doing gyro and software. Some of them I hadn't seen before. Or, you know, these new camera sensors with high dynamic range that you can put in your computer vision applications. So a lot of different new things that you can take advantage of. And this is kind of, I think, what's the message of up plaint is, you know, there's all these resources. You can go to developer.quacom.com, which is where you get all these tools and all these things that we've created for developers. I'm not going to go through all of them, but there's just a whole bunch of things. You may have seen some of it in our booth here at the conference. You know, we have all joint, for example, is your connectivity framework. It's, you know, it basically allows, it's cross platform. So it allows connectivity across all your devices. And it's gone beyond just mobile phones. It's the whole concept of, you know, Internet of everything. So now you can, you know, your TV is talking to your phone, to a bunch of sensors in your house, your smart home. All of them are now getting connected. And the beauty of this is whether you're using a Snapdragon chipset in your embedded device or you have a connectivity module in your coffee maker. They're all going to be talking to each other via all joint. Open source, free to download. You can integrate it into just about any OS, any device. Before I talked about, this is an augmented reality framework. If you're creating augmented reality applications, you can take advantage of that. Fast CVs for computer vision. Gimbals for contextual awareness. So this is the idea that your device knows exactly where it is, what it's doing, and even what it's facing. So a ton of things you can do with that. And in the end, there's SDK now for Android that really makes it easy for you to go and take advantage of some of these low level hardware that we put in there. So if you're, you know, if you're going in and you're trying to access something and try and optimize for something that's Snapdragon specific, you can easily do it with the SDK. Now that doesn't mean that whatever you're doing is going to break on other processors. It just means that if it detects Snapdragon and that specific feature, you can do more. So a lot of opportunity with that as well. You know, if you want to do things like gestures, facial processing, geofencing, you can take advantage of the SDK. And then, I know a lot of you guys, especially if you're doing Linux hardware level drivers, you need some level of JTAG access to do the debugging and the testing. Some of the JTAG tools, so we have a JTAG port on this, but some of the JTAG tools that we use at Qualcomm, very expensive. I think they're overkill for a lot of the things that you guys would want to do. So what we did is we worked with a company called McGregor. They have a thing called USB Wiggler. It's pretty inexpensive. It's about 250 bucks. It comes with an open source software and everything, and we worked with them to enable that JTAG solution. So if you're what you're doing requires JTAG, now there's a low-cost way of doing it using this tool. Very simple. This is your USB Wiggler. We have a JTAG port on this that this hooks up to, and then you have your OCD commander, runs the Windows or Linux, and you can do a lot of things. I wouldn't say, you know, the whole feature set of a full-blown JTAG solution, but it does quite a bit. Some examples of the tool, interface, so pretty well-featured tool. And then the other thing, so besides this, and I didn't bring it with me, but you guys got to go check this out. A company called Inforce, and these guys are in the business of embedded. They've been creating modules based on the x86 processors. There are another company that came to us and said, look, you know, we saw Snapdragon. We saw you guys are doing this Dragon board. We want to create some new modules based on the chip set. I think this one is really cool. So they created a module similar to what I showed you, but they also created a single board computer. Now you guys probably all heard of Raspberry Pi. This is the same concept with a Snapdragon chip set. So Raspberry Pi obviously has its applications and where it fits. If you want to go above that, if your application requires the four cores running at 2 plus gigahertz, the fast GPU, the DSP, all the things that I talked about, I think this is a really good board and you get a ton of features for about $150. So Inforce, company who did this, I think they did a great job. They packed it all into it. It's about the size of a credit card. It's a Pico ITX format. And Pico ITX is a standard. Actually, what I did myself is I got one of them and put enclosure around it. I'm using it in my home theater PC. You know, you got, it's actually, I think, got so much power in there that I don't even need that much. And all of that is about the size of a credit card. So this is pretty cool. I encourage you to check this out. And then some of the features of the single board computer talked about it. You get all the goodness of Snapdragon. These guys put microSD, SATA, EMMC on there. You have your micro HDMI, LVDS, so you can do multiple displays. You can hook up cameras, HD audio, multiple USB type connectors, basically all the little debug and expansion connectors that you may need. Full connectivity, gigabit ethernet. And I talked about form factor. And then this is the module. Similar specs, but again, back to if you wanted to actually have your own product. If you're creating something that requires this level of performance, you can go and use the module. And again, Q7 form factor. So you just put in the connector and hook this up. Now, for anything to be successful, it requires community. It requires people sharing ideas, you know, talking about their projects, asking questions. And some people may just need simple support. So we worked with Intrinsic, the company created Dragonboard, to create a community site. Now it's fairly new. Probably not, you know, what you guys are used to, but it's actually been growing as people are using these platforms more and more. It's called MyDragonboard.org. There are blogs in there, forums in there where you can ask questions, where you can post projects. And I'm also going to make a little promise here for you guys that are here in the room. Thank God it's not a full room. I'm going to promise that if you guys have a project, if you're working on something that you want to enable on Snapdragon or you want to do some porting on it, send me an email and I'm going to hook you up with one of these boards, whichever one that works for you. So there's some you need to work on or something you want. I'll personally sponsor your project. And then hopefully if it comes into something, we'll see it on the project's page of this site. And we've done a few of those things. We do it we do actually quite a bit with universities. When some students are working on a new project, they come to us and say hey, Qualcomm, I'm working on this. You have some hardware that I can use and you know we've hooked them up with these boards. And then how many of you guys know about Quota Aurora? A few people. So that's where you go download the code and some of the Linux tools that you may need to work on your projects. So another really good resource if you're working on anything related to open source and you know you basically you can take the code from any of these boards, make your own modifications, download whatever you need from here, rebuild the you know your whether it's Android or anything else, and then load it back on the device. So this is where you get all your code. So as I bring this to close, I actually have one more video that I could show you which is the idea of assuming we have time. How are we doing for time? Okay, so a quick video on I talk about heterogeneous computing and now more than ever. So I thought maybe I should record video on that. And as a result, our devices now demand more from their processors. This need has inspired a new paradigm for mobile processing technology called heterogeneous computing and Qualcomm Technologies Incorporated is once again helping lead the way in redefining computing. Heterogeneous computing is enriching the mobile experience by enabling new capabilities such as natural user interfaces, computational photography, and augmented reality of mobile devices. These exciting new capabilities are not only processor intense, but they're also constantly evolving and introducing new workloads with diverse requirements. The CPU alone is not enough to handle these diverse requirements. Heterogeneous computing, however, is designed to help enable the efficient use of diverse processors like the CPU, the GPU, and the DSP to efficiently handle these new emerging workloads. Intelligently utilizing diverse processors helps enable new experiences while maximizing battery life and thermal efficiency. Programmability is an essential part of extending the diversity benefits to application developers. Qualcomm Technologies is evolving the Snapdragon system architecture to allow them to create new applications on as diverse programmable processors. It's like this. Utilizing diverse processors gives us more opportunity to find at least one of them that will truly excel at completing a particular workload. No single processor can be amazing at every task. In fact, some processors are rather inefficient at certain jobs while excelling at others. Once we realize that each type of processor has its own strengths, we can opportunistically choose the right one for the right workload. It is this diversity that gives heterogeneous computing its strength and flexibility. Mobile power efficiency is nothing new to Qualcomm Technologies. And through heterogeneous computing, our processors are designed to work together enabling new user experiences and longer battery life on your mobile devices. Heterogeneous computing is yet another example of how Qualcomm Technologies is once again reinventing the mobile world. Now, heterogeneous computing is nothing new, but I think bringing it to mobile space obviously requires a lot of architecture work and something that Qualcomm is very committed to doing. But on top of that, I think enabling the ecosystem and folks that are actually creating software and creating the user experiences to take advantage of those things. So this I think pretty much sums it up as far as some of the areas where we're doing, you know, where we're working on standards like OpenCL or RenderScript. And then at a native level, you got all the SDKs that I talked about, the Hexagon to access the DSP, SDK for Adreno to access the GPU, as was the LLVM compiler that I talked about. All, you know, there's all of these I think really contribute to that whole vision of heterogeneous computing in this space. So I showed you guys this, what you do with all this is up to you. And like I said, if you guys are working on something cool, let me know. We can definitely work with you and enable your projects. And I think we have maybe a few minutes for questions. Okay. Anybody have any questions? One question. So I'll say that again. How's about upstream Linux kernel support for system on chip from Qualcomm? How do we support upstream? Yes. Yes. How was it? Mark, since you spoke up, you want to take that question? I mean, I think Kotorora is, you know, where we're, you know, working on that. But I don't know if you have any comments, Mark. It's evolving. So I think, you know, Mark is with the organization, with the quick organization, Qualcomm Innovation Center, which manages a Kotorora forum. And I think we've really have evolved and, you know, the efforts were in there are getting bigger and bigger. So if there are any questions, comments, maybe? Do you guys love it or what? It's really cool. I think, you know, we have really, we just, I think, are, you know, tipping our toes right now with this whole embedded space and putting these chips in this space. But I see a lot of potential because of how much investment is going into mobile. And I think all of that is going to really bring a lot of value to other things that these processes are going into. And this whole concept of, I think, the digital sixth sense that we talked about in the middle of everything, I think all of that is going to get enabled by various types of processors. You know, you have the high-end processors that are going to do the bulk of processing. And then you have connectivity modules that are going to do the communication. And eventually, you know, I think you guys have read all the articles, but everything is going to be talking to each other. There's going to be a lot of, a lot of the, this whole concept of sensors and everything that around you is going to be talking to each other. I think really the future is really exciting. And I think putting Snapdragon into these devices is really going to take them to the next level in terms of the performance, power efficiency, and the user-friendliness. So that's the idea. And hopefully you guys go check it out and build something new. All right, please grab a, give a round of applause for Leon for presenting here at LinuxCon today. Okay. Thank you very much.