Jump to page: 1 29  
Page
Thread overview
Mobile is the new PC and AArch64 is the new x64
Sep 10, 2018
Joakim
Sep 10, 2018
Iain Buclaw
Sep 10, 2018
Joakim
Sep 12, 2018
Kagamin
Nov 10, 2018
Per Nordlöw
Nov 10, 2018
Iain Buclaw
Nov 10, 2018
Per Nordlöw
Sep 10, 2018
Claude
Sep 10, 2018
Joakim
Sep 10, 2018
rjframe
Sep 10, 2018
aberba
Sep 11, 2018
Chris
Sep 11, 2018
Joakim
Sep 11, 2018
Chris
Sep 12, 2018
Joakim
Sep 12, 2018
Dejan Lekic
Sep 12, 2018
Iain Buclaw
Sep 12, 2018
Chris
Sep 12, 2018
Chris
Sep 12, 2018
Iain Buclaw
Sep 13, 2018
Kagamin
Sep 13, 2018
Iain Buclaw
Sep 14, 2018
Joakim
Sep 14, 2018
Iain Buclaw
Sep 15, 2018
Joakim
Sep 11, 2018
Neia Neutuladh
Sep 11, 2018
Joakim
Sep 11, 2018
tide
Sep 13, 2018
Joakim
Sep 14, 2018
Dave Jones
Sep 15, 2018
Joakim
Sep 16, 2018
Dave Jones
Sep 16, 2018
Joakim
Sep 16, 2018
Dave Jones
Sep 16, 2018
Joakim
Sep 16, 2018
tide
Sep 17, 2018
Joakim
Sep 17, 2018
Neia Neutuladh
Sep 18, 2018
Joakim
Sep 18, 2018
Neia Neutuladh
Sep 19, 2018
Joakim
Sep 19, 2018
Dave Jones
Sep 20, 2018
Laurent Tréguier
Sep 20, 2018
Dave Jones
Sep 20, 2018
Laurent Tréguier
Sep 20, 2018
Dave Jones
Sep 20, 2018
Laurent Tréguier
Sep 20, 2018
Dave Jones
Sep 20, 2018
Laurent Tréguier
Sep 21, 2018
RhyS
Sep 21, 2018
Laurent Tréguier
Sep 20, 2018
Neia Neutuladh
Sep 17, 2018
Dave Jones
Sep 16, 2018
tide
Sep 16, 2018
Dave Jones
Sep 16, 2018
Neia Neutuladh
Sep 16, 2018
tide
Sep 17, 2018
Patrick Schluter
Sep 17, 2018
Gambler
Sep 15, 2018
aberba
Sep 11, 2018
passenger
Sep 11, 2018
Joakim
Sep 12, 2018
Nicholas Wilson
Sep 11, 2018
Dejan Lekic
Sep 12, 2018
Gambler
Sep 12, 2018
Chris
Sep 12, 2018
Joakim
Sep 12, 2018
Joakim
Sep 16, 2018
Gambler
Nov 10, 2018
Joakim
Nov 10, 2018
test
Nov 10, 2018
Rubn
Nov 13, 2018
Joakim
Nov 13, 2018
Rubn
Nov 13, 2018
Joakim
Nov 13, 2018
kinke
Nov 13, 2018
Joakim
Nov 14, 2018
kinke
Nov 14, 2018
rikki cattermole
Dec 01, 2018
Joakim
Dec 07, 2018
Joakim
Aug 21, 2019
kinke
Aug 21, 2019
Newbie2019
September 10, 2018
LDC recently added a linux/AArch64 CI for both its main branches and 64-bit ARM, ie AArch64, builds have been put out for both linux and Android. It does not seem that many are paying attention to this sea change that is going on with computing though, so let me lay out some evidence.

At my workplace six years ago, the developers were all allocated a core i5 ultrabook- likely with 4 GBs of RAM and a 128 GB SSD, though I don't remember those specs- and a 27" 2560X1440 display with which to get our work done. I was pretty happy with the display, the best I'd ever used to that point. I'm guessing the setup cost my employer a couple thousand dollars per developer.

I picked up an Android/AArch64 smartphone earlier this year, with 6 GBs of RAM, 128 GBs of flash, a Snapdragon 835 octa-core CPU, and a 5.5" 2560X1440 display. This is the fastest computer I've ever owned, and it fits in 6 cubic inches and weighs a little more than a third of a pound. It cost me approximately $700.

That is a stunning change in mobile capabilities in just six years, where what used to be a mobile developer workstation now comes packed into a smartphone at a fraction of the cost.

If you think the phone doesn't actually perform, I borrowed a 2015-model Macbook Air with a core i5 and 4 GBs of RAM and built the last pure C++ version of ldc, 0.17, using both cores with `-ninja -j5`. It took two minutes with clang from Homebrew, the same amount of time it takes me to build the same source on my smartphone with clang by running `ninja -j9`.

This phone has been my development hardware since early this year, by pairing it with a $30 bluetooth keyboard and a $5 stand to hold it up. I'm typing this long forum post up on it now.

Tech companies are starting to realize this and going after the desktop/laptop PC markets with various 64-bit ARM products:

https://www.engadget.com/2018/08/09/samsung-galaxy-note-9-dex/
https://arstechnica.com/gadgets/2018/08/samsungs-tab-s4-is-both-an-android-tablet-and-a-desktop-computer/
https://youtube.com/watch?v=uLvIAskVSUM
https://www.anandtech.com/show/13309/lenovo-yoga-c630-snapdragon-850-windows

That last link notes 25 hours of battery life with a Windows/AArch64 laptop, one of the key benefits of ARM, which is why even Microsoft has come around.

Yes, I know, these devices won't replace your quad-core Xeon workstation with 32-64 GBs of RAM anytime soon, but most people don't need anywhere near that level of compute. That's why PC sales keep dropping while mobile sales are now 6-7X that per year:

https://www.businessinsider.com/PC-sales-are-continuing-to-slump-fewer-are-sold-now-than-when-the-iPhone-launched/articleshow/62547330.cms
https://www.androidauthority.com/smartphone-sales-idc-2018-871363/

Most of those mobile devices running iOS have AArch64 CPUs, and google said last December that "over 40% of Android devices coming online have 64-bit support," which is why they're requiring apps with native libraries to support it by next fall:

https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html

D now has mostly working AArch64 support, with the ldc 1.11 release last month:

https://github.com/ldc-developers/ldc/releases/tag/v1.11.0

That is the result of years of intermittent AArch64 patches added by the core teams of ldc and gdc- David, Iain, Kai, Johannes, Dan, and others- to which I recently added some Android patches. You too can pitch in with the few remaining issues or try out the AArch64 support with your own D code.

This company provides a free linux/AArch64 CI for OSS projects, LDC uses it:

http://blog.shippable.com/shippable-arm-packet-deliver-native-ci-cd-for-arm-architecture

Despite all this, D may never do very well on mobile or AArch64, even though I think it's well-suited for that market. But at the very least, you should be looking at mobile and AArch64, as they're taking over the computing market.
September 10, 2018
On 10 September 2018 at 15:43, Joakim via Digitalmars-d <digitalmars-d@puremagic.com> wrote:
> LDC recently added a linux/AArch64 CI for both its main branches and 64-bit ARM, ie AArch64, builds have been put out for both linux and Android. It does not seem that many are paying attention to this sea change that is going on with computing though, so let me lay out some evidence.
>

I've just got back from a conference where AArch64 was declared a disaster, and the future is now PPC64 and RISC-V.
September 10, 2018
On Monday, 10 September 2018 at 14:00:43 UTC, Iain Buclaw wrote:
> On 10 September 2018 at 15:43, Joakim via Digitalmars-d <digitalmars-d@puremagic.com> wrote:
>> LDC recently added a linux/AArch64 CI for both its main branches and 64-bit ARM, ie AArch64, builds have been put out for both linux and Android. It does not seem that many are paying attention to this sea change that is going on with computing though, so let me lay out some evidence.
>>
>
> I've just got back from a conference where AArch64 was declared a disaster

Why?

> and the future is now PPC64 and RISC-V.

If you're not joking, it still stands that AArch64 is the _present_, as the currently most widely-deployed CPU arch used for personal computing, ie in mobile devices.

Those other two arches are a joke right now, but you never know in the future. ARM was a joke compared to Intel a couple decades ago too. ;)
September 10, 2018
On Monday, 10 September 2018 at 13:43:46 UTC, Joakim wrote:
> Despite all this, D may never do very well on mobile or AArch64, even though I think it's well-suited for that market. But at the very least, you should be looking at mobile and AArch64, as they're taking over the computing market.

Coming from ARM system programming for embedded systems, I'm also looking into AArch64. Having done some x86 assembly, ARM assembly was a bliss, and AArch64 looks even better!

I also wish D will do well for embedded systems. Most of the system developers I know program in C, and do very little C++ for it becomes unmaintainable (unless you enforce strict coding rules: like using it like "C with class" with very little template). C is straigthforward and gets the job done (ie. Vulkan - as a quite recent API - was written in C, not C++. So D would do so good!

That's why I think "BetterC" is a good strategic move (in the long run) even though I understand people coming from Java/Python background might not get it at all.

If we have a BetterConst (I'm referring to Jonathan Davis article: http://jmdavisprog.com/articles/why-const-sucks.html ), I think D would be even greater.
September 10, 2018
On Monday, 10 September 2018 at 15:06:46 UTC, Claude wrote:
> On Monday, 10 September 2018 at 13:43:46 UTC, Joakim wrote:
>> Despite all this, D may never do very well on mobile or AArch64, even though I think it's well-suited for that market. But at the very least, you should be looking at mobile and AArch64, as they're taking over the computing market.
>
> Coming from ARM system programming for embedded systems, I'm also looking into AArch64. Having done some x86 assembly, ARM assembly was a bliss, and AArch64 looks even better!
>
> I also wish D will do well for embedded systems.

Radu has done good work getting D working with uClibc, for example with OpenWRT:

https://github.com/ldc-developers/ldc/issues/2810

yshui added a Musl port too, which can be used with the Alpine build of ldc available at the above ldc 1.11 link.

There have been a couple reports of companies trying to use ldc for this, but there are likely still bugs that need to be ironed out.
September 10, 2018
On Mon, 10 Sep 2018 13:43:46 +0000, Joakim wrote:

> Despite all this, D may never do very well on mobile or AArch64, even though I think it's well-suited for that market. But at the very least, you should be looking at mobile and AArch64, as they're taking over the computing market.

I was talking with a local businessperson the other day who noted that there are young people walking around right now that never have (and likely never will) own a laptop.
September 10, 2018
On Monday, 10 September 2018 at 16:09:41 UTC, rjframe wrote:
> On Mon, 10 Sep 2018 13:43:46 +0000, Joakim wrote:
>
>> Despite all this, D may never do very well on mobile or AArch64, even though I think it's well-suited for that market. But at the very least, you should be looking at mobile and AArch64, as they're taking over the computing market.
>
> I was talking with a local businessperson the other day who noted that there are young people walking around right now that never have (and likely never will) own a laptop.

That's exactly whats happening in Africa. The continent is leapfrogging from nothing to a smart phone thanks to China. Many don'[t know how to even use a PC. Especially the young and upcoming generation.

The smart phone market is really significant.
September 11, 2018
On Monday, 10 September 2018 at 13:43:46 UTC, Joakim wrote:
> LDC recently added a linux/AArch64 CI for both its main branches and 64-bit ARM, ie AArch64, builds have been put out for both linux and Android. It does not seem that many are paying attention to this sea change that is going on with computing though, so let me lay out some evidence.
>
> [...]

Oh, I reported the AArch64 release of LDC to this blog a month ago, and I just saw that they wrote up an entry about it last week:

https://www.worksonarm.com/blog/woa-issue-65/
September 11, 2018
On Monday, 10 September 2018 at 13:43:46 UTC, Joakim wrote:
> That's why PC sales keep dropping while mobile sales are now 6-7X that per year:

This shouldn't be misunderstood as such, which I think you as misunderstanding it. The reason mobile sales are so high is because of planned obsolescence and the walled garden that these devices are built around. I've gone through maybe 3-4 phones in the time that I've had my Desktop, and I use my desktop every single day. I don't need to buy a new one cause it runs perfectly fine, there aren't operating system updates that purposely cause the CPU to run slower to "save battery life" when a new device and OS come out. That's not to say it isn't insignificant but the sales numbers are exacerbated.
September 11, 2018
On Monday, 10 September 2018 at 19:28:01 UTC, aberba wrote:
> On Monday, 10 September 2018 at 16:09:41 UTC, rjframe wrote:

>
> That's exactly whats happening in Africa. The continent is leapfrogging from nothing to a smart phone thanks to China. Many don'[t know how to even use a PC. Especially the young and upcoming generation.
>
> The smart phone market is really significant.

That's why I'm trying to draw attention to first class ARM support by the D Foundation (not just some voluntary efforts, much as they are appreciated). ARM in dmd wouldn't be a bad idea perhaps, as Manu suggested. It's become more than obvious over the last couple of years that mobile devices have become very important and that people often use them instead of PCs or laptops. Fewer and fewer developers can "escape" development for mobile ("we want an app too"), and if a language doesn't offer first class support for mobile, then devs won't bother with it. A lot of other (new) languages are directing their efforts towards mobile for a reason.
« First   ‹ Prev
1 2 3 4 5 6 7 8 9