Hi Yves, For sure you can have a couple of timing tests on your own, they should help you get familiar with using this package. If you just wish to have a general idea on the scaling though, we have a paper on this package for your reference https://www.mdpi.com/2227-9717/9/10/1813.
Thank you, Ruochun On Friday, June 10, 2022 at 5:28:52 AM UTC-5 [email protected] wrote: > Hello, > > I think now I understand, thank you for the thorough explanation. > I will run the code for few steps slowly increasing the number of > particles and reporting the runtime per step to see when the scaling > becomes linear. > > I guess I had not timed the code execution up to now, so removing the > runtime visualization might have helped a bit. > I indeed was talking about a frame, that is a mistake I make a lot, my > apologies for not being clear on this point. > > Thank you once again for your helpful answers! > > Yves > > On Thursday, June 9, 2022 at 11:29:29 PM UTC+3 Ruochun Zhang wrote: > >> Hi Yves, >> >> For the question regarding the performance, I am not completely >> surprised, because for smaller problems (less than something like 10k >> particles), various overheads dominate the runtime (such as the overhead >> for launching kernel functions), so the total runtime is probably not >> sensitive to the problem size. Only for larger problems it shows a linear >> scaling. However on the other hand I do expect *some* time savings if you >> shrink the problem size by a factor of 100~1000. If you meant the runtime >> did not change at all after you enlarge the particle size by 10 times, then >> probably you are somehow completely I/O bound, and it may be related to >> that you are using runtime visualization, since host--device communication >> is a big overhead. And by the way, 5 minutes for a frame may be possible, >> but 5 minutes for a *time step* is not normal, but I assume you meant frame. >> >> Paraview is a common choice for visualization. If you apply Glyph(sphere) >> filter to the particles with correct radius, you will see the particles at >> around Z=-10 are hexagonal close-packed and fixed. We use them to represent >> a ground that has some geometrical roughness. >> >> Thank you, >> Ruochun >> >> On Thursday, June 9, 2022 at 10:41:12 AM UTC-5 [email protected] >> wrote: >> >>> It is actually running, just very slowly! >>> >>> However, I still have some questions. Since as you said my GPU is not >>> the most efficient, I modified the JSON file and multiplied the radius of >>> the particles by 10. >>> It should lower the number of particles by a lot and make the runtime >>> visualization feasible. And it does, as the first screenshot shows (still >>> not responding as soon as I click on it though...). >>> >>> However, the time for an iteration is the same as if I did not change >>> the radius, meaning that it takes more or less 5 minutes per time step. >>> I do not really understand, as I would expect it to be very fast with >>> several tens of particles. Do you see a reason for that? >>> >>> Also, I have been using Paraview for visualization of the particles (is >>> it what Chrono users usually use?) and got the result shown on my second >>> screenshot. >>> What are these points at Z=-10? >>> >>> Thank you for your support, I really appreciate it. >>> >>> Yves >>> >>> On Thursday, June 9, 2022 at 6:23:38 PM UTC+3 Ruochun Zhang wrote: >>> >>>> It's probably running, you can check if there is an output folder >>>> created and if there are output csv files inside it. I usually disable >>>> runtime visualization for GPU scripts, it tends to be too large to be done >>>> efficiently. For GTX1050 on Windows, I am not sure but maybe several >>>> hours' >>>> runtime can be expected, if you are to finish the entire demo. >>>> >>>> Ruochun >>>> >>>> On Thursday, June 9, 2022 at 9:34:53 AM UTC-5 [email protected] >>>> wrote: >>>> >>>>> Hello, >>>>> >>>>> I indeed double-clicked. Now, with the Powershell, providing an input >>>>> file as argument (exactly what you provided in your answer), it outputs >>>>> some text, and creates a windows that freezes instantaneously, and >>>>> nothing >>>>> happens after that (Not responding). >>>>> >>>>> The output I get is the following: >>>>> >>>>> Reading parameters: ../data/gpu/demo_GPU_repose.json >>>>> --- Parsing JSON --- >>>>> params.sphere_radius 0.100000 >>>>> params.sphere_density 2.800000 >>>>> params.box_X 40.000000 >>>>> params.box_Y 40.000000 >>>>> params.box_Z 40.000000 >>>>> params.time_end 10.000000 >>>>> params.grav_X 0.000000 >>>>> params.grav_Y 0.000000 >>>>> params.grav_Z -980.000000 >>>>> params.normalStiffS2S 100000000.000000 >>>>> params.normalStiffS2W 100000000.000000 >>>>> params.normalStiffS2M 100000000.000000 >>>>> params.normalDampS2S 1000000.000000 >>>>> params.normalDampS2W 1000000.000000 >>>>> params.normalDampS2M 1000000.000000 >>>>> params.tangentStiffS2S 100000000.000000 >>>>> params.tangentStiffS2W 100000000.000000 >>>>> params.tangentStiffS2M 100000000.000000 >>>>> params.tangentDampS2S 1000000.000000 >>>>> params.tangentDampS2W 1000000.000000 >>>>> params.tangentDampS2M 1000000.000000 >>>>> params.static_friction_coeffS2S 0.750000 >>>>> params.static_friction_coeffS2W 0.750000 >>>>> params.static_friction_coeffS2M 0.750000 >>>>> params.rolling_friction_coeffS2S 0.000000 >>>>> params.rolling_friction_coeffS2W 0.000000 >>>>> params.rolling_friction_coeffS2M 0.000000 >>>>> params.cohesion_ratio 0.000000 >>>>> params.adhesion_ratio_s2w 0.000000 >>>>> params.psi_T 32 >>>>> params.psi_L 16 >>>>> params.output_dir repose >>>>> params.write_mode csv >>>>> params.step_size 0.000002 >>>>> -------------------- >>>>> Added 60761 granular material points >>>>> Added 45030 fixed (ground) points >>>>> In total, added 105791 >>>>> Version: 3.3.0 >>>>> NVIDIA Corporation : NVIDIA GeForce GTX 1050/PCIe/SSE2 (3.3.0 NVIDIA >>>>> 512.96) >>>>> >> GLSL: 3.30 NVIDIA via Cg compiler >>>>> # of shapes : 1 >>>>> 240 240 0 240 >>>>> # of shapes : 1 >>>>> 26 26 0 36 >>>>> # of shapes : 1 >>>>> 74 74 0 144 >>>>> # of shapes : 1 >>>>> 49 49 0 72 >>>>> Initialize Viewer : GL_INVALID_ENUM >>>>> frame step is 0.0333333 >>>>> >>>>> >>>>> This happens with both Release and Debug, with the exact same output. >>>>> I feel I am close to the solution. Is it anything you experienced in >>>>> the past? >>>>> >>>>> Best regards, >>>>> Yves >>>>> >>>>> On Thursday, June 9, 2022 at 4:27:57 PM UTC+3 Ruochun Zhang wrote: >>>>> >>>>>> Hi Yves, >>>>>> >>>>>> If you just double-clicked the executable and found the prompt closed >>>>>> shortly after launching, then you should instead use a Windows-based >>>>>> command line terminal to run them (Powershell?). This will allow you to >>>>>> see >>>>>> the output/error message. >>>>>> >>>>>> Remember you'll typically have to supply a JSON file as an input >>>>>> argument, something like "*.\demo_GPU_repose.exe >>>>>> demo_GPU_repose.json*". You should try that from a terminal. That's >>>>>> the only suggestion I can infer from your description. >>>>>> >>>>>> Thank you, >>>>>> Ruochun >>>>>> >>>>>> On Thursday, June 9, 2022 at 4:17:23 AM UTC-5 [email protected] >>>>>> wrote: >>>>>> >>>>>>> Sorry for the multiple messages, but I figured it might be good for >>>>>>> you to have access to my build logs. Here is the one with Debug, >>>>>>> knowing >>>>>>> that I get the same results and output with the Release one. >>>>>>> >>>>>>> Thanks, >>>>>>> Yves >>>>>>> >>>>>>> On Thursday, June 9, 2022 at 8:57:43 AM UTC+3 Yves Eric Maxime >>>>>>> Robert wrote: >>>>>>> >>>>>>>> Thank you for your answer. >>>>>>>> >>>>>>>> I have been trying to use WSL for days, but it never worked. So I >>>>>>>> proceeded to a clean installation with Windows, following the >>>>>>>> instructions >>>>>>>> of the website, using the same software (SourceTree, CMake, VS2022). I >>>>>>>> installed CUDA as well. >>>>>>>> >>>>>>>> Here is a zipped folder containing all the advanced CMake >>>>>>>> information. >>>>>>>> >>>>>>>> Thank you for your help, >>>>>>>> Yves >>>>>>>> >>>>>>>> On Thursday, June 9, 2022 at 5:54:06 AM UTC+3 Ruochun Zhang wrote: >>>>>>>> >>>>>>>>> Hi Yves, >>>>>>>>> >>>>>>>>> Most likely the environment is the problem and it can be the >>>>>>>>> tricky one. You are running on Windows, not WSL, right? Also, maybe >>>>>>>>> you >>>>>>>>> should show your "Advanced" options so we have an idea about how your >>>>>>>>> CUDA >>>>>>>>> environment/paths are set. >>>>>>>>> >>>>>>>>> Thank you, >>>>>>>>> Ruochun >>>>>>>>> >>>>>>>>> On Wednesday, June 8, 2022 at 12:33:01 PM UTC-5 >>>>>>>>> [email protected] wrote: >>>>>>>>> >>>>>>>>>> Hello, >>>>>>>>>> >>>>>>>>>> Sorry about that, I must have unchecked the box when taking the >>>>>>>>>> screenshot. >>>>>>>>>> The compilation has been done with the GPU module, which is why I >>>>>>>>>> have access to the GPU demos. >>>>>>>>>> >>>>>>>>>> Do you have an idea of why it does not work? >>>>>>>>>> >>>>>>>>>> Thank you, >>>>>>>>>> Yves >>>>>>>>>> >>>>>>>>>> On Wednesday, June 8, 2022 at 7:13:52 PM UTC+3 Ruochun Zhang >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Yves, >>>>>>>>>>> >>>>>>>>>>> You should enable Chrono::GPU module. It's the GPU-based physics >>>>>>>>>>> module and right now it is Chrono's dedicated granular simulator, >>>>>>>>>>> those >>>>>>>>>>> demos need that. >>>>>>>>>>> >>>>>>>>>>> Thank you, >>>>>>>>>>> Ruochun >>>>>>>>>>> >>>>>>>>>>> On Wednesday, June 8, 2022 at 9:09:03 AM UTC-5 >>>>>>>>>>> [email protected] wrote: >>>>>>>>>>> >>>>>>>>>>>> Hello everybody, >>>>>>>>>>>> >>>>>>>>>>>> I am new to Chrono, but would want to run a simulation which >>>>>>>>>>>> should be very close to what the repose demo found in Chrono::GPU, >>>>>>>>>>>> to the >>>>>>>>>>>> exception that I need some recent additions to the code, so I have >>>>>>>>>>>> to use >>>>>>>>>>>> the feature/GPU branch. So everything that follows is with that >>>>>>>>>>>> branch. >>>>>>>>>>>> >>>>>>>>>>>> I already compiled Chrono following the tutorial for Windows in >>>>>>>>>>>> the past and could run several demos. But having now access to a >>>>>>>>>>>> NVIDIA >>>>>>>>>>>> GPU, I installed CUDA and additional dependencies, and followed >>>>>>>>>>>> the >>>>>>>>>>>> instructions again. I saw that OpenGL was important to have to be >>>>>>>>>>>> able to >>>>>>>>>>>> run this repose demo, so I also compiled it. Here is how my CMake >>>>>>>>>>>> window >>>>>>>>>>>> looks: >>>>>>>>>>>> [image: cmake.png] >>>>>>>>>>>> It got built well on VS2022, with all succeeded and 1 skipped. >>>>>>>>>>>> >>>>>>>>>>>> With that, I can run all demos with their executables (IRR, >>>>>>>>>>>> Postprocess, ...), except for the GPU ones. The ball drop one >>>>>>>>>>>> shows a >>>>>>>>>>>> terminal with values and outputs files, and that's the only one. >>>>>>>>>>>> The rest >>>>>>>>>>>> just crashes with no output as soon as I click on the executable. >>>>>>>>>>>> >>>>>>>>>>>> My guess was that I do not have the granular module enabled, >>>>>>>>>>>> and from the documentation I need that. However, I cannot find it, >>>>>>>>>>>> and >>>>>>>>>>>> cannot find how to install it. >>>>>>>>>>>> >>>>>>>>>>>> Could you please help me figure that out? >>>>>>>>>>>> >>>>>>>>>>>> Thank you, >>>>>>>>>>>> Yves >>>>>>>>>>>> >>>>>>>>>>> -- You received this message because you are subscribed to the Google Groups "ProjectChrono" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/projectchrono/fd898c7d-4ca4-4763-b2f5-aa53055277cfn%40googlegroups.com.
