1

Made a big program in EV3's programming software for AI creation and it went from slow to not loading.

It just displays the loading bar in the middle of the page.

Even my lenovo windows 10 8GB RAM laptop won't load the program. I'm guessing I need more RAM? I knew big projects like 3D scenes and music needs 100s of GB of RAM.

3
  • Some consumer apps can use many gigabytes of memory resources, though few need that in the form of actual RAM. Your system is fine, and it is unlikely that adding more physical memory will help. The Lego app just scales poorly. You are probably ready to switch to a more comprehensive programming tool.
    – user3971
    Feb 5, 2016 at 13:38
  • I CAN'T SWITCH..............I can only use it because it's easy, and if I can make it bigger then I can finish my AI creation in it.........it's gotta gotta gotta be my slow pc........Cubase music production/Video Editors have done the same to me dude, I need more/faster processors and RAM maybe too. Feb 5, 2016 at 19:42
  • If (and only if) the app is memory-bound, then adding physical memory is only putting off the inevitable. And, there is a chance that the app is simply unable to handle data over a certain side, in which case adding all the physical RAM in the world will not help.
    – user3971
    Feb 5, 2016 at 21:13

3 Answers 3

1

The answer is EV3's software allows putting many blocks into 1 myblock to be a program in a program. It's fast as slim silk sleek now.

How could it be that no-one nor tech support nor reps knew the answer!?

There is no limit now.

3
  • Glad to hear that it is working now. Would you mind letting us know what the trick was to get the project open? That would help future users who come to this site.
    – Gliderman
    Feb 18, 2016 at 3:15
  • If you didn't make it super duper huge and it still opens but malfunctioning, all you do is go to the side where you can click, and click a loop and go to tools and click MyBlock builder to make it 1 single block!, repeat, save it, then reopen and it will soon now be fast and sleek, the key is to use MyBlocks before it gets to big, MyBlocks give you unlimited blocks, you can even put MyBlocks in-to MyBlocks yes. Feb 18, 2016 at 20:51
  • "How did no one know?" well, because most people don't exercise the gui tool very much. The majority of such programs are going to be trivial. So, you are an outlier in an already pretty obscure subject.
    – user3971
    Mar 18, 2016 at 11:05
0

Because exchanging comments over this is probably not appropriate, I'll answer with steps I'd take to determine the actual problem at hand. Right now we do not have the information we need to do more than guess.

These are somewhat rhetorical questions intended to prompt anyone having this problem in a useful direction.

  • What platform are we duplicating this on? Assuming Windows or OS X, these have very different designs when it comes to how the kernel allocates resources.
  • When the app is spinning, is the CPU also pegged? Are other applications also slow or unresponsive? This may indicate that the app is asking for system resources (e.g., like memory) and the system is "swapping" hard to handle those requests. This will result in an overall slow system and a stuck application.
  • Is there any indication in the usual "system health" views that either physical memory or CPU are exhausted? i.e., OS X has a "memory pressure" view that is a combination of the information you can get out of top and vmstat, which is useful. Windows may have similar widgets.

My guess is that the application is depending on the holding the entire program in memory, and this is just going to be impossible at some point, assuming it is a 32-bit application. It's a lot harder, but more correct, to "page" (not an OS virtual memory page) in parts as you need (like a text editor or word processor, or even those graphics programs you mention), but this has to be baked in from the start, and I imagine this tool was not intended to be used to make programs beyond modest sizes.

But, to answer your specific question, we don't know if more physical memory will help. It very well might be an expensive pointless operation. We don't know because we don't have the information we need to assess whether the app is memory-bound, CPU-bound, or at the actual limits of the size of data it can handle, regardless of the system resources available to it.

0

I find that all drag-and-drop programming eventually just slows to a crawl. As jdv said, you should probably switch to a programming language.

There are a number of EV3 firmware replacements out there already. LeJOS is Java based, and I think RobotC does C. If you have gotten to the point where you can create massive AI programs in the drag-and-drop, you are probably ready to advance to this type of programming. Sit down on YouTube one day and learn a little about the language (I'm aware of a lot of LeJOS, but I'd imagine that RobotC has some as well), and go from there.

It sounds like you are pretty advanced with the drag-and-drop software, and while it may seem like it's easy, it just gets to the point where you are at where it just stops working well. By also switching out the firmware, your code will run faster and be more precise.

You may wish to try letting the computer sit overnight opening the existing project just to confirm that it is not going to open. If you can open it, try breaking it into sections or projects or something to make sure that you have a backup of it (screenshots might work, though maybe not at your scale?).

8GB of RAM is a pretty good amount I would say though, for comparison, I did huge LeJOS projects with only 2GB in the past.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.