-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ARM 32-bit progress #5460
Comments
Even though you could get the
BTW, Do you also focus on the Ubuntu/ARM32bit without the Ubuntu/ARM64bit?
\CC: @myungjoo , @lemmaa |
@leemgs I'm not sure to understand what you mean by Ubuntu/ARM32bit without the Ubuntu/ARM32bit part? |
@manu-silicon Sorry, Typo, I have modified. |
@leemgs My board is the 32-bit variant, so it is just Ubuntu/ARM32bit. |
With the fix for PR dotnet/coreclr#3981 the result is:
|
@manu-silicon I am trying to do the same (run coreclr tests on ARM environment) by following this guide https://github.com/dotnet/coreclr/blob/master/Documentation/building/unix-test-instructions.md. According to this, building tests for ARM results in an error (as building the native code using cmake in Windows does not support arm architecture yet). I can make some changes to the buildtest script to build only the C# based tests for ARM architecture. I wanted to ask how you are building the test binaries for ARM environment (using buildtest.cmd). Have you made some local changes (to build only the C# code and ignore the CMake build) or is there some other way to do it? |
@prajwal-aithal I've followed the instructions and build the tests on Windows and copy the tests folder on Linux ARM. I built on ARM the native code for CoreFX (just the native code as the rest won't build). I built CoreFX on Linux x64 and copied the assemblies over. I built mscorlib on Linux x64 and copied it over. Once I had all the paths setup properly, I launched the command to run the tests. |
@manu-silicon Oh, ok. I will try this then. Thank you :) |
Today's result with FEATURE_STUBS_AS_IL disabled:
|
Target: Raspberry Pi2
I'm curious why my test discovered count is different with others. |
@jyoungyun Next time, please attach the result XML file as well. |
@jyoungyun The difference in the number of tests is related on how I build first the test on Windows and then copied them over to the Linux ARM device. As @myungjoo is saying, having the XML file would enable us to compare and see what the differences are. |
@manu-silicon I attached xml file. Thank you. |
Target: Raspberry Pi2
|
Wow, so those two fixes cleared up about half of the failing tests? Nice! |
@masonwheeler Yes! The dotnet/coreclr#4460 patch reduced half of failing tests. :) |
Target: Raspberry Pi2
And I found the reason why my tests discovered count is different with others. |
@jyoungyun , It's amazing. : ) BTW, Is dotnet/coreclr@18268be related to the number of the reduced failure? It seems that it is not related to the failure numbers of the unit test for Linux/ARM. |
@jyoungyun If possible, it would be nice to know how many tests each bug fix addresses. |
@jyoungyun Out of curiosity, how long does it take you to run all the tests. For me on the Jetson TK1, it takes roughly half a day. |
@manu-silicon We will be pushing out patches that accelerate the execution of corerun at ARM soon. @leemgs is preparing PR for that (release build bugfix) |
For reference, @manu-silicon has shared the hardware specification that he used for getting the result of unit test. Here is the detail contents of his development board.
|
@leemgs Oh, The number(18268be) means the base commit. Someone want to reproduce the result, the base commit info. will be helpful. Reducing failure test cases are more to do with dotnet/coreclr#4460 patch, I think. |
In the lastet commit(92d7091), I got much better result. I was investigating several failures and many of them are fixed in the latest master branch. |
@hqueue I can do it on Friday. |
Tried to run the test suite on Friday, but it got stuck on 2 tests that I had to manually kill:
|
The run finally completed. Results on Jetson TK1 commit 3ddd9c4
|
The latest unit test results! Target: Raspberry Pi2
CoreClr_UnitTest_Results_160510.zip @manu-silicon When I run unix tests, some tc takes such a long time. And the blocked tc is changed. Have you seen the same case ? |
Note that we have about 120 fails due to regression being hopefully fixed easily with dotnet/coreclr#4888. We may see under 100 fails soon. |
@jyoungyun I'm not sure what you mean by "tc is changed". But as I said it just before posting my results, I had 2 tests that was hanging preventing the rest of the test cases to run. I had to kill them manually to get to the completion. |
Then is Ubuntu in the Pi the only way to run the project? I was guessing it can be ran in Windows 10 IoT too. |
I'm curious what you hit on Win10 IoT? You shouldn't need to install any core runtime. The instruction put the runtime with your application. |
In case it would help anyone, I'm posting my instruction notes on how to install the dotnet tool on RPi3 to run .net core apps.
With this I got working an .NET Core console app and an ASP.NET Core web app that is running 24/7 for about 2 months. EDIT: My notes were taken when there were no official instructions on how to install on RPi3. Consider first trying these ones https://github.com/dotnet/core/blob/master/samples/RaspberryPiInstructions.md |
Sorry @jaestevan I should have been more clear. I meant to point out the screen shots of how/were you can update the framework version. To see if that would help you get it running. That was my biggest hang up for a while, figuring out building for the correct version of the framework. |
@Petermarcu by following this instructions I got a CLR error: Failed to initialize CoreCLR, HRESULT: 0X80131534 @Gonkers oh, I see what you mean. Thanks. @darxis I will try to build it myself when I have time, thanks. @ALL: Found this link: http://developers.de/blogs/damir_dobric/archive/2015/09/22/how-to-run-net-core-application-on-pi2-win10-iot-core.aspx Still have not tried it myself but I will. Anyway I guess it should be a cleaner way when ARM support is official. |
@jaestevan , I'll give it another try, hadn't done it on Win10 IoT in a few weeks. You shouldn't have to build the full stack but its always an option. |
@Petermarcu Thanks Peter, let me know how it works. I can send you the details I followed if that helps. |
I tried it again yesterday and everything worked really well.
Then I copy bin\Debug\netcoreapp2.0\win10-arm\publish\* to the Pi and execute I have one guess as to what is happening. Can you run |
I've just been experimenting with this and have it working with SDK version 2.0.0-preview1-005743 with runtime version 2.0.0-preview1-001915-00. I've been able to edit and build using that latest Visual Studio 2017! All looking really good. I've got a repository at https://github.com/sceneskope/PiDotnet which has some projects where this works. I'm actually using docker as containers for my images as the projects I'm working on have to run on multiple PIs. |
I've also created a .NET Core app that runs on an RPI 3 using SDK 2.0.0-preview1-005685 and runtime framework 2.0.0-beta-001834-00. Runs fine natively (although I get |
The Microsoft images won't be for the ARM architecture, which is why I've created my own set of docker images! It would be great to have proper Microsoft images though. |
@nrandell Oh nice, I missed that. I'll have to try it out at some point. |
@nrandell Is that a fact written down somewhere? I mean no ARM docker images from MS. |
@MihaMarkic have a look at dotnet/dotnet-docker#223. I guess this is as official as it gets. |
@nrandell So, they'll provide one for .net core 2.0 eventually but skip 1.x. |
Upgraded and rebuilt everything with 2.0.0-preview1-001978-00 and now it works in the Pi 💃 |
Excuse me if this has been discussed before, but will this run on Raspberry Pi Zero too? |
Unfortunately not, the Pi Zero is only ARMv6, Mono will work there though.
…On Mon, 17 Apr 2017, 11:58 Andrei Rînea, ***@***.***> wrote:
Excuse me if this has been discussed before, but will this run on
Raspberry Pi Zero too?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<https://github.com/dotnet/coreclr/issues/3977#issuecomment-294452108>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAbA_0ZBbplbgWzERjKkrw-MV7buPiDxks5rw0XvgaJpZM4H7Qi3>
.
|
I think pi 1 and zero have ARMv6k that has some enhancements compared to ARMv6. |
@wanton7 Hoo boy, even more versionitis for us to keep straight? |
@masonwheeler not sure what the differences are but example next golang (1.9 i think) is going to still support ARMv6k but they are dropping support for ARMv6. So must be something significant. |
@Petermarcu I propose to close this issue; we're far past the "ARM 32-bit progress" title -- we have many thousands of tests running on ARM Linux in our CI. Agreed? |
I agree. ;) |
I'm opening an issue to track the progress of ARM 32-bit with respects to the regression tests.
Currently I'm getting the following results on Ubuntu 14.04 running on a NVidia Jetson TK1. This is unfortunately not the results you get from a clean checkout, the only difference is that it contains a fix for issue #5422 (PR dotnet/coreclr#3879), but overall it should provide a good base to monitor our progress:
I've attached the XML results:
coreclrtests.zip
The text was updated successfully, but these errors were encountered: