Errors, bugs, questions - page 1627

 
Alexey Navoykov:
I can't imagine how much such a project would have been built in MQL. And in complete IDEs there are different modes of compilation. Perhaps you are referring to the release build, while most of the time the debugging would be enough. But in MT you don't have much time to wait for that.
Plus precompiled files are used there, so subsequent builds will obviously be faster

On the pluses I write in the usual gedit, debugging console into it, debugging is done directly in gdb, linking and builds are also done from the gcc console, from the IDE sometimes use QtCreator, but only when what I need to write or debug a GUI :)

I came to this decision less than a year ago, when I realized that it's easier to load a plain text editor without extra features and to correct or write something, than to load a heavy IDE...

 

Alexey Navoykov:
Насчёт ВСЕХ кодов - вы не погорячились? Откуда такая уверенность? Вы их все пробовали?

Tried a lot...

Ok, I'll give you some code to play it as soon as I'm at my computer. But I'm already confused by your stories about tens of ms on weak hardware. Are we talking about the same things? Is the script file .mq5? And what processor do you have?

I will clarify the data when I get to my computer.
 
Slawa:
What's to come back?
Debug on the story for some reason picks up the full visualisation. So true is explained. I will additionally use __DEBUG__. The documentation doesn't say much about visual debugging.
 
Comments not relevant to this topic have been moved to "Help with the gridiron".
 

I've searched in kodobase until I found some big projects for MT5. But what amazed me, the sections of Expert Advisors and indicators are in fact full of handicrafts of the same person. And he's been churning out several of them every day for several years now!I don't know why he's so eager to do this and what for... Maybe MQ pays him for this, I don't know... Of course, everything is being prepared in one order, but I personally would be tired of just making descriptions and screenshots.)

The Expert Advisor weights about 150-200 kb, but first, the code is rather smeared, plus there are a lot of repeating fragments. Well, it's my estimate. It would take me several times less by volume.Secondly, the code itself is simple, there are no virtual functions, templates and also no dynamic objects and pointers.That is, in fact all code can be inline. It compiles rather quickly, in the neighborhood of 600-700 ms. Well, in general, you need to find a really voluminous and fairly complex example. And of my developments I only finalized that project under the new compiler, all others I use under the old one, and spend time on their revisions, do not see the feasibility, given the current situation.

 
Alexey Navoykov:

...

And among my developments I only finalized that project for the new compiler, all the rest use the old one, and spend time on their adjustment, I do not see the practicality, given the current situation.

Currentversion:Graphical interfaces IX: "Progress bar" and "Line Chart" elements (Chapter 2)

 

The first test Expert Advisor TestLibrary01 compiled in 6.5 seconds. However, we still have to estimate the amount of code actually used by this Expert Advisor. Besides, the word "smart" will look a bit comical if we compare it to the compilation speed in the old build. It was instantaneous there. If anyone wants to get acquainted with it, I attach the 1159 version compiler. Please rename the file, of course.

I.e. in fact we can draw the following conclusion: compilation time of course may vary many times depending on code size and complexity, but one thing is unchangeable - it's much slower in the new compiler than in the old one. At the same time I checked that there is no significant gain in software speed. If somebody wants to prove the opposite, go ahead.

Files:
 
Alexey Navoykov:

Well, the first test Expert Advisor TestLibrary01 compiled for me in 6.5 seconds. However, we still have to estimate the amount of code actually used by this Expert Advisor. Besides, the word "smart" will look a bit comical if we compare it to the compilation speed in the old build. It was instantaneous there. If anyone wants to get acquainted with it, I attach the 1159 version compiler. Please rename the file, of course.

That is, in fact, the following conclusion can be made: the compilation time of course may vary many times depending on the size and complexity of the code. But one thing is unchanged: it's much faster in the old compiler than in the new ones. I checked it and there is no considerable gain in software speed. If somebody wants to prove the opposite, go ahead.

Of course, the most complex projects in MetaTrader 5 take too long to compile. It may even take up to 11 seconds. The same versions in MetaTrader 4 are up to 25 times faster.

For example, the same project.

MetaTrader5:

0 error(s), 0 warning(s), compile time: 11054 msec              1       1

//---

MetaTrader4:

0 error(s), 0 warning(s), compile time: 434 msec                1       1

//---

So far, it is not clear what it is related to. You can try to prepare material for tests and send it to servicedesk for checking. If you do not want to show the code of your projects, you can use the code from the articles of this series as an example.

 
Anatoli Kazharski:

Of course, my most complex projects in MetaTrader 5 also take a long time to compile. It even takes up to 11 seconds. Exactly the same versions, but in MetaTrader 4 can be up to 25 times faster.

For example, the same project.

MetaTrader5:

//---

MetaTrader4:

//---

So far, it is not clear what it is related to. You can try to prepare material for tests and send it to servicedesk for checking. If you do not want to show the code of your projects, you can use the code from the articles in this series as an example.

I have one supposition: because MT4 is 32-bit, it has not become "totally optimized". As far as I know, this compiler woe-optimization was announced as supposedly improving work in a 64-bit environment. By the way, I should check the 32-bit version of MT5. Maybe everything is ok with it. But I do not have such an opportunity.

If you have 32bit version of metaeditor for 5, please share it.

 
Anatoli Kazharski:

Of course, my most complex projects in MetaTrader 5 also take a long time to compile. It even takes up to 11 seconds. Exactly the same versions, but in MetaTrader 4 can be up to 25 times faster.

For example, the same project.

MetaTrader5:

//---

MetaTrader4:

//---

So far, it is not clear what it is related to. You can try to prepare material for tests and send it to servicedesk for checking. If you do not want to show the code of your projects, you can use the code from the articles in this series as an example.

This is code optimization.

If you write OPTIMIZE=0 in [Experts] field in metaeditor.ini, your compilation speed will be like in 4. I have some projects compile in 20 sec. and some get into infinite optimization loop :)

Reason: