 Felly, hwnna, mae'n gwrth o'r cyfnod, mae'n gywir i'w Macintyre. Gwyddaeth am ymddir, F-64. Hei, rhai, rhai. Felly, rhai. Mae'n rhaid i'r cwm yn ddechrau mewn pryd o'r meddwl ar gyfer y cwm. Felly, yma, mae'n bwysig i ddwylo'r gweithio'r cyffredinol. Yn yma, mae'n ymddir i'r cwm i'r cwm i ddwylo'r cwm, Aon 64 am, y poeni'r ddym ni'n gweithio'r gwaith yma yn cael ei weld eich gweithio'r gwahanol am ychydig o'r gwbl ei hyn ar gyfer'r bool. Ym Mhobwch yn ymwneud ym Mhobwch 64, mae'r mhobwch yn gwneud ym ni, yn gweithio'r gwahanol, ac mae'n gweithio'r gwahaniaeth yn gweithio'r gwahanol, a'r ddweud yn cael ei ddim yn cael ei ddim yn cael eu ddweud, Maybe. Agenda. I'm going to give a quick summary of Arm V8 and bits and pieces of the arm roadmap around it. Then I have a demo. I have a fast model form arm on my laptop so I can show you an emulated AR64 system at least. I'm now going to talk about bootstrapping. Felly, mae'n gweithio bod yn cyflawni gyda'r cyflawni, gofio, yn gwneud, mae'n gwneud ar y cwm yn eu adeiladau efallai mynd i gyd yn ddigwyddodd ar hyn o'r team ar gyfer ar y V8. Rwy'n gweithio'n cael ei gweld ar gweithio'r deckau. Rwy'n gweithio'n gweithio'n gweithio'r deckau. Byddai'n gweithio'n gweithio'n gweithio'r gweithio'r G5, G6, G7, G8. Mae'r ystod, mae'r ystod ymlaen nhw'n mynd i ddweud yn 32-bit a'r ystod yn y V7. Felly, 64-bit a V8 yn ei ddweud. Mae'r ddweud yn ddweud yn cael eu ddweud yn cael eu ddweud yn 32-bit a 64-bit. Yn y ddweud, mae'n ddweud yn cael eu ddweud. Mae'r ystod, mae'r 64-bit ar CPU. Sto i ar een y semf binłych. Mae'n meddwl... Mae'n meddwl'r ddweud iddyn nhw i mynd i ddweud. Marknau gen i szym unol 32-bit a 32-bit ast kännyddair, mae'r ddechrau yn tot yn awr i ddweud wurden ynd ac yn holl m � à,' Yn rwy'n gweithio'n gwybod i'r cyffredinol iawn. Mae'r cyfrifysgwyr yn gweld yn cael ei wneud o'r ffordd o'r cyfrifysgwyr yn cael ei wneud o'r gweithio'r cyfrifysgwyr. Felly mae'r ffysgwyr yn ffysgwyr yng Nghymru, ac mae'r newydd yn 64-bit ar gyfer y cyfrifysgwyr. Mae'r cyfrifysgwyr yn cael ei ffysgwyr yn ffysgwyr 3. Felly, Ian. Ynna'n gweithio'n gweld. Felly mae'r ffysgwyr yn 32-bit. Felly mae'r ffordd? o'r lu kaydd? Wel,itives Felly mae'r wneud mae'r gweithio'n gweithio, I know'n gallu rнего arall sydd yn dweud. Roedde Older? �fion y pethau, i wrth gwrs, mae'n gweld i fi z Bentley a'r T Bug honno..."풍합니다." So, Wookiez, do you want, Mike? Run, run. Vfpv3 is the existing vector floating point unit, which is standardised in ARM V7. There is going to be a V4 vector floating point unit in ARM V8. It is backwards compatible, it's just bigger and better. So, it's possible to build V8 with only user support for the introduction set, or Gwyddoedd, mae'r cerddwyr yn oed yn ei ddweud, ac mae'r cerddwyr yn y brifdedig, mae'n oed yn hynny'n gwybod o'ch bywg y dyfu'r cyfrifiadau, mae'n fydd yn ei ddweud, oherwydd mae'r cerddwyr yn y brifedig, mae'n ei ddweud, mae'r cerddwyr yn y cyfrifiadau. Yn y rhaid, techyd yn y bydd y cyfrifiadau yn Lleodraeth yn fwyaf, ac rhaid o'n gwybod yna'n gweithio'r cyfrifiadau yn gwybod i'r ddweud ychydig, ac mae'r cyfrifiadau yn dweud. that the carnal maintainers will not accept systems hea support for V8 in the 32 bit ARM namespace so it won't be able to run a 32 bit carnal on the purity because they won't add for 32 bit carnails? 32 bit compatibility supports every existing V7 feature that anyone is going to care about, I believe it does all of it, I am not aware of anything that is missing. Felly, yw'n dwyliadau'r Cymdeithas, ym Baeon Llywodraeth, mae'n dwyliadau gyda'r prifoedd sy'n cael ei ddau'r bwrdd ffordd. Mae'n meddwl o'r ymddangos, a'r LPAE yw'r cymdeithas, ac mae'r cymdeithas yw'r cwrtexau 15. Felly, mae'n meddwl o'r arweinyddol o'r fanfair. Byddai'n meddwl o'r cymdeithas 64-bit cymdeithol sy'n meddwl o 32-bit a 64-bit cymdeithas. Mae'n meddwl o'r cymdeithas. Ysgolwch ar y cyfnod ar EYEARTH 64 yn ystod yn ymgyrch a'r cyfnod yma ar EYEARTH 32. Roedd oed yn bryd i'r cyfrifio ar gyhoedd, ond mae'n ddim yn ymgyrch ar y cyfnod, mae'n ddweud i'r cyfrifio ar yr cyfnod. Mae'n ddweud i'r cyfrifio ar gyfer 32-bit yn ymgyrch. Mae'n ddweud i'r cyfrifio ar gyfer EYEARTH 64. Yn gyfle i'r meddwl, mae'n rhaid i'r ddweud, DOdwn i ddim yn ddeud. Why would you bother? Mae'n gweithio'r sgwr ar gyfer 62, isa, i'r ddweud o'r ddeud. Yn ydydd y ffordd, dyma'r ddeud yn ddiweddol yn gweithio'r ddeud. Ond o'r ddigon, mae'n ddweud o'r 16 ddeudau, mae'n ddweud o'r ffordd, mae'n ddweud o'r ffordd y ddeudau, ac mae'n ddweud o 31 ddeudau. Mae'n 64 ddeudau. Stacpointer, program counter on not general purpose, the will be for in most modes a dedicated zero register which a lot of people have been crying out for, I'm told. So, more new features, much improved SIMD, so instead of the quite limited set of registers, you're going to get more of them. Whereas previously, if you used Neon, you were very limited in terms of what floating point modes it supported, I think it was single precision instead of double precision. I'm not exactly clear on all the details. The new one's better. And even more important possibly for people who care about these things, there are new locking instructions ready for, designed specifically to match the C++ and C atomics, which are in the latest standards. Arm years ago was not wonderful for providing atomics these days. It's very, very important that these work well, so they've been designed in from the word go. Now, because V8 has happened, doesn't mean V7 stops here. There is still a continuing roadmap. I mean, we've seen Cortex A8, Cortex A9, A15, A7 is coming. There are other members in the family still yet to be announced, which I'm not going to do because I'm not going to steal any thunder for marketing because I'm not that brave. Arm V8 is still under development. The architecture was announced externally to Arm Q4 last year. Working with a load of partners right now, people who are all developing hardware to go with this. Obviously, the remaining specs are expected to be released second half of 2012. I don't know exactly when. The plans are soon-ish. No one's committed to it exactly yet, but everything should be out there soon. Expect to see hardware sometime in 2013. Again, this actually, I honestly can't tell you when it is because it will all depend on the specific silicon partners as to when people actually get things out on the market. It'll be sometime 2013. For further information, if you really want to know more about this, follow the link on.com slash architecture, there is more information than most people will ever want to know about the new architecture. Go have a look. You can ask me if you'd like, but I'm a software guy, not a CPU designer, so I'm not the right person for real detail. So, I have a demo. One of the things that ARM tends to do for design for new CPUs is we have what is called a FAST model. Now, FAST is a relative term. It's much faster than any models that we've had in the past. For the sake of not keeping you guys sat here for 20 minutes waiting for it to boot, I booted this earlier. Here's one I made earlier, should I say. But if we switch over, we should see. I have the boot messages there from a FAST model. You can see it's a standard-looking Linux kernel. The model is giving it a gig of RAM. This comes up really, really slowly when it starts, hence why I've already done all this. There's loads of details about it. This particular kernel, kernel 3.4, compiled by Jonathan Austin, a guy in the software department in ARM. This is an SNP model, which isn't very fast. 400-bloger MIPS. Again, it's a model. The hardware will be much faster. Just to show, we even have this particular model, this file system, includes... We have an SSH server, DropBear. It includes Apache. It includes PostQuest. We have people who have already been doing port work to make sure that a lot of this stuff works on AR64. Some patches have gone out, not as many as we'd like. That's going to be improving soon, I hope. That is the serial console. If I move that out of the way, then behind it, you should see... This is an Ubuntu-based system. Most of the patches were going to Ubuntu and Debian at the time, but I can log in without caps lock. Oh, no. No, that's not right. Let me go and talk to the other one. Yay for demos. Aren't they wonderful. Just for information, you will see in a moment. It takes a short. Again, it's not rapid yet. You'll see at the moment, look. It's a real port. No, it doesn't have a current de-package, and there aren't any... Apologies, there were some on this, and clearly the app I was running has cleaned up after itself. I was even going to demonstrate de-package installing something. You've all seen that before. Trust me, it works. Sorry. Logs. Again, it's totally emulated. It is not designed for absolute performance yet. It's something that the team in ARM are working on all the time. What I can do is do that. This will take a while, so I'm going to come back to this later. Are we going to get our hands on this fast model at any times? It is available at the moment for licensing. People are working on improving that as we speak. I can't give you full details just yet. Watch this space. That is starting X on this virtual frame buffer. I'll come back to it shortly. In terms of bootstrapping, the toolchain already works. People have been doing a lot of cross-building. The toolchain does run natively as well. Believe me, you do not want to be running a native compilation on this model. Life's too short. The point of the model is to be able to validate things at the moment. It does work. The kernel port has been done inside ARM. Those of you who watched the kernel mailing list will have noticed. Literally last Friday, the initial implementation stuff was posted to the kernel mailing list. Catalan and Will and a bunch of other people have been doing lots and lots of work to get this as a new port. The plan is it will not end up being combined with the existing ARM. It's going to be ARCH64. That's a controversial decision, to be honest, like anything in the kernel when you first turn up with a big set of patches. Some people want to merge 32 and 64, like has happened for other architectures. For us, this is such a different CPU that what the ARM folks would like to do is to keep them separate. We'll see how it goes, but basically, the kernel worker is happening right now. Bootstrapping user land. Again, cross-build a base system. We're testing using models for now. There was a small team in ARM who've been working on this already. Clearly distro folks are going to be doing it next. One of my jobs in Lenovo is going to be to help support the distros. We're looking at supplying to anyone who's interested a basic root file system using Open Embedded. The point of that root file system will be that you will be able to chyrwt in it. You'll be able to do whatever else you need. Use the tools of the ver to help bootstrap the beginning of any distro. The tool chain is out there already. It's upstream in GCC. People are working on backporting to GCC 4.7. I'm getting ahead of myself here. The other thing that's going to happen in Lenovo is we're going to be setting up a bug tracker for the distros to share the NV8 work. When people do come up with patches that need to go upstream, we don't need to have all of the distros all doing the work. It will be nice if we work together. The enterprise distros have been starting work already. The ARM server market is potentially very lucrative. That's what they're all hoping. V8 is going to be a large part of that. For AR64 in Debian, the plan is we'll be cross bootstrapping because of course that's what you need to do for any brand new architecture. Switch to real hardware as soon as we can. There will be hardware available sometime next year. Of course, I'm going to be pushing to get hold of some for Debian as much as we can. We'll see how well it works. If we can get into Debian ports not too long after that, because we can use the models before then for verification, it shouldn't be too difficult to get a basic setup working. Really, really, it would be nice if we can get into Weezy plus one. I realise that's not that long away. We're probably going to freeze in two years. It should be doable. Who wants to help? Only two of you? Three, four. Right. Basically, if you're interested, of course I'm not taking names or anything stupid like that, join us in Debian ARM. That's where this is going to start happening soon. As I said, there are more details coming that I can't tell you about yet because I don't know all of them. I'm hoping we should get some, well, some extra things going soon. So again, thanks ARM, the narrow world community who've already been involved in this. The most useful thing everyone can do right now is make your multi-arch build dependencies work. Yes. You can do it easily. Nothing to do with that at 64. You don't need to know anything. Just make it work. Oh, and make your packages cross build well. The tool chain will do most of it for you if your packages are already working in multi-arch and cross building. Most of this will just work, we hope. For my answer, Konstantinos, how far has it gone regarding Debian porting? Sorry? How far has it gone regarding Debian porting? We already have, as I said, in the internal team, they've been doing, to be honest, an Ubuntu Natty port. The vast majority of the work for is clearly portable straight to Debian. I mean, even to the level that the initial tool chain releases are multi-arch by default, that kind of thing. I don't know how far it's going to work. That image is basically a Ubuntu, but that's more or less the same at the base. It all works. Only 10% of the patching needed for that was actually ARH64 specific. Very little change needed to be made because mostly it doesn't matter. 90% of those patches were cross building patches. Sorry? The set number of packages built for ARH64 is about 130, I think. It's basically enough to debut Strap with Apache and Lamp and MySQL. I thought it was more than that. You think so? Yeah, I can't tell you the exact number. It might be 170 or something, but it wasn't. Basically, we have the base system plus a few bits. One of the things that people wanted to demonstrate was a lamp stack. Obviously, people who are going to want a 60-foot 4-bit ARM system in a server will probably want a lamp stack. Who'd have thought? Can we consider Neon as the default FP? Neon, as far as I know, will be required for ARMv8. Yes? I already answered Marcos on IRSC, but yeah, I guess it's good for the room too. The plan, because it is default for V8, will actually be to have Neon on by default in the Debian and Ubuntu tool chains. So no need for people to flip the switch themselves. So, although all that porting work has been done, the only problem is that ARM Legal won't let the people who have done the work send any of the patches in. So we mostly have to do it all again, which is a bit tedious, but well, it sucks. Give us a menu, please. This works better on a bigger screen, of course. What we have running here is a 32-bit RMHF installation. It's an XFCE build. This is an example of specifically to show existing V7 32-bit builds do not need any tweaks at all. The file system that we have here was built at 64, and literally we just untied a 32-bit chyrwt into it, and it just works. XFCE, what's the shortcut keys to bring up a menu or anything, anyone? Alt-F2, and then type. Yeah, I know, demo's wonderful. Sorry, Adam. Yeah, it is the terminal. I'll come back to it. What I can demonstrate is it is running a lamp stack. While it's waiting doing emulated things in X, which is never going to be fast, I hope you can all see that. We have AR64, and it tells you all of that information in PHP info. It has PHP, my admin installed, and a whole bunch of other stuff. They take bloody ages, especially when you're trying to get it to do stuff in X. This hopefully is something helpful, and now it's just come up, and then the terminal hopefully... Now, talk amongst yourselves for 20 minutes, and we'll get a Firefox shortly. So while that's loading, due to all the coolness of multi-arch, we can run 32-bit things and 64-bit things together. Hell yes, absolutely. One of the reasons is OpenJDK 32-bit should work out of the box, and if someone was interested in making an optimized AR64 version of OpenJDK, that might be nice. Yeah, absolutely. This is exactly one of the reasons why I think my arm was very interested in demoing on Ubuntu and multi-arch makes using the 32-bit and 64-bit mix so much easier. I don't want to start type Firefox again. This is why I started the model earlier. It does take 10 minutes or so to boot, and starting up a Firefox takes about the same length of time again. I would love to show you Firefox looking at a web page locally. We'll get there hopefully. Of course, we haven't got so far up the stack in bootstrapping AR64 to get to Firefox. That's way, way out of scope at this point. And of course, equally, Firefox shouldn't need 64-bit. Well, it depends. It might run a bit longer with its memory leaks if it's 64-bit instead of 32. Who knows? But the things that people care about so far for 64-bit are server tasks, not desktop tasks. Anything else? Well, come on, please. You've got to carry on talking. So we see Firefox start. Well, again, this is still one model running all of it. I want to make pains to point that out. This is emulating of V8 doing everything. So you mentioned the date of 2013, I think, for actual hardware. Yes. I wish I knew. You might like to point out to ARM that if they want us to ship, then we need to be able to play it. Oh, absolutely. There are FPGAs that people have already announced, which are much closer for more than one year. I think it's a good idea. I think it's a good idea. I think it's a good idea. I think it's a good idea. There are FPGAs that people have already announced, which are much closer for modelling than the software will ever be, but if anything, are slower. As soon as we get hardware available, there are so many people bottlenecked and queuing up to want to get hold of some. And of course, again, it's not down to ARM to produce them. The wonderful thing of working for a CPU designer rather than a CPU producer is we're going to need all of the usual ARM, silicon partner suspects, are probably going to end up doing V8, and we're going to have to wait for the first versions of those to come out. We will be pushing hard to get stuff out into the community as soon as possible because, hey, it matters. Oh, Firefox. Get in there. Next, QBM. I wanted to ask a few things. First thing, so you're showing that the FAS model, what about support for QEMO? Good question. ARM and QMU have an interesting relationship. ARM are not very happy about releasing enough information directly or especially not working on QMU. The information that is necessary to do QMU will be out soon, I am told, and there are a whole bunch of people who are queuing up to work on it. The Lenovo toolchain folks also want QMU as well because it helps them. So I would expect as soon as the specs come out, it won't take long. That's the best I can say at this point. OK. You also mentioned that most people don't need the 64-bit. So what would they be installing? Would they be installing 32-bit ARM and then just install additional packages? I'm just wondering, do we need something in the Debian install support? Well, most people aren't going to need 64-bit desktop stuff. I mean, it'll work. OK, here we go. This is the same PHP info page but running locally inside the model. And look, it does work. I could even, maybe if it talks to me, it'll take a short while. We're expecting that people are going to want that for servers. For desktops, it's going to take a while. Sorry, Neil had a question. It's a question from Bernard Link on IRC. What's the user space memory layout? Is there any chance of stuffing out the first four gig of virtual memory to make sure all 32-bit assumptions are cached? Maybe. That's a question I honestly can't help with. I don't know. He's default of the stuff. It's a default Apache install on here with some things installed. That's probably going to take a while. Especially when I type for it. There's going to be a lot more technical information coming out in the next few months. We'll see. I mean, as it is, definitely what the plan will be for Debian work is, I expect, as soon as we get hardware, we're going to be running a base of our HF, a base system. Obviously, 64-bit kernel, 32-bit user land, and then we can have cheroots for actually building. As the DSA folks keep on pointing out, we did this the wrong way with our HF, and we had an our HF base system with the cheroots. That then meant that we ended up having to... Running unstable on a DSA box is not a fun experience. And they don't like it. Go on. You can actually see up top here. There is a number which is a count of total instructions run so far, and that is well into 1.4 billion at this point. The suggestion is from the folks who know that on a reasonable size AMD64 machine, you should expect to see equivalent performance in the model on the order of 10 to 20 megahertz. It depends hugely on exactly what hardware you're running and what tasks you're doing. So it's not something you want to be doing a native compile on. No way, no how. Look, we have PHP, my admin. So look, we have PHP, we have MySQL. Yes, there was a MySQL on here, there's a Postgres on here. It all works for a lamp stack. Do we have any other questions? Silence descent. So, well, I hope you enjoyed this, and the demo worked almost as well as I hoped. Hey, demos, we all know how that goes. Thank you all for coming. As I said, there is scope for a lot of people to get involved doing cool stuff on an architecture bring up. Constantinos will agree, I'm sure BDL, and other folks who've done arch bring ups will say, yeah, it's a lovely cool thing to do. It can be very frustrating, but very rewarding when it all works. So please join in and find us on WNOM. Thank you.