Live data from Hacker News

Windows 10 on ARM

channel9.msdn.com

281–290 of 290 posts

Re: Windows 10 on ARM

#283

Emulation should be a last resort. They should ship an SDK with all the proper import libs and a cl.exe etc. that can target proper Win32 on ARM.

The import libs for Windows IoT seems to contain the full api surface, so we already have those - it's just that a lot of the functions are stubbed out in the actual dlls on the system.

Didn't think about this when I wrote the comment above, but the IoT import libs are of course 32 bit, and the new Windows for ARM here is 64 bit, so I guess it's not actually very useful. Still you can easily make your own inmport libs, but that of course does not give prospective developers the best experience. I guess we will have to see what Microsoft are going to do about this.

Re: Windows 10 on ARM

#284
post #43

Earlier quoted context omitted.

5. How do they solve the problem that x86 has a much stronger memory model than ARM, which makes emulation of multithreaded x86 code pretty hard without introducing a huge performance disadvantage?

Since there are no publicly available details, I would guess this is solved in hardware. The Qualcomm processor can be made to support stronger memory model for translated instructions similar to how the Power processors support strong-access ordering for efficient x86 emulation[1]. [1] https://www.google.com/patents/WO2012101538A1?cl=en

Previous ARM generations had a "strongly ordered" memory type. ARMv8 doesn't have this for cacheable memory (normal) but device memory has a R(erorder) attribute to control access ordering. Of course device memory isn't cached either. Beyond that the non reordering attribute only applies within an implementation defined block size and its behavior with respect to normal accesses (or outside the block) isn't defined either. Making it mostly useless except for the most restrictive of cases.

Re: Windows 10 on ARM

#285

Earlier quoted context omitted.

My off-the-cuff guess is they just force a memory/inst fence where x86 makes guarantees which is a bit better but still incurs some overhead. Visual Studio used to(probably still does) this around volatile for x86 which leads to fun bugs when you port to ARM/etc.

That'd basically be putting a barrier on every memory access though.

Nah, because ideally most applications are using library/system services to fence their data structures. For the remaining cases the apps could be marked with a new application compatibility flag (this feature already exists in windows for older apps) which adds additional checking that flags pages which are being accessed from multiple contexts as requiring additional emulator level sequencing. There are ton of strategies here, which could be as simple as basically disabling multi threading in the emulator or a page ownership ping/pong, etc.

Re: Windows 10 on ARM

#286
post #251

Earlier quoted context omitted.

I voted you up as it's rare a Linux man would show any kind of respect to the - actually very very good - NT kernel. Good post also.

The NT kernel is actually terrible, that's why linux devs hate it.

How is it terrible? This is an honest question.

Re: Windows 10 on ARM

#288
post #218

Earlier quoted context omitted.

So Linux users should get the shaft because they're the minority? Android Studio and the emulator work very well on all 3 platforms. >Trying to be identical across 3 platforms always means adopting the lowest common denominator and always results in being equally shit on every platform. In that case we're fortunate that Xcode isn't cross platform.

> So Linux users should get the shaft because they're the minority? Linux users should get the best possible experience on the system, so should the windows users. If a better emulator is available on windows why should they get shafted? Linux tools even have the advantage that they may not need full emulation in the first place, but instead we end up with the worst of both worlds. > Android Studio and the emulator w…

>Linux users should get the best possible experience on the system, so should the windows users. If a better emulator is available on windows why should they get shafted? Linux tools even have the advantage that they may not need full emulation in the first place, but instead we end up with the worst of both worlds.

You seem to be under the impression that if you develop a cross platform solution that it's going to be inherently inferior. I disagree with that and the new Android emulator is proof of that. It's superior to the MS Android emulator in every way and it's also available on all 3 platforms.

>In my experience nothing about android development works very well on any platform.

In that case you probably don't have much experience developing for Android.

>I'm not a huge fan of MS, but windows phone development and tools are an absolute dream in comparison.

If developing for windows platform is a dream then why is their app store a cesspool filled with horrible looking apps?

Re: Windows 10 on ARM

#289
post #199

Earlier quoted context omitted.

How many platforms does that Microsoft emulator work on? One? Unlike Microsoft, Google supports 3 development platforms and so their new emulator also had to support 3 platforms. Also, the new emulator was written from scratch and that takes time.

That is no excuse for letting the emulator stagnate for several years, without any kind of visible change in regards to performance. They hire PhDs capable of sorting out the incredible whiteboard and phone CS exercises for something. Also apparently all those Phd weren't able to do what GenyMotion guys and girls were happily developing.

How many platforms is GenyMotion available on?

Re: Windows 10 on ARM

#290
post #57

Earlier quoted context omitted.

> Azure subscription and it's not a perfect UX; but man does it beat AWS I actually disagree with this pretty strongly. The Azure UI seems flashy for the sake of being flashy. The AWS UI is much easier to navigate and use for me. Azure's UI is more unified though. There are some random AWS services (e.g. sqs) that have a totally different UI theme going on. Edit : the Azure UI is only more unified if you ignore the f…

The way I read parent's comment is: "Azure's UI is not as good as AWS, but the instance is better". I may be wrong but I think parent meant that you get more resources for the money.

looks like you are right. I think I just misread the parent comment.
Post reply on HN