NVil Forum

General Category => Bug Reports => Topic started by: steve on March 13, 2013, 02:21:22 pm

Title: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 13, 2013, 02:21:22 pm
Hello,

Although I have not had time to check, but probably due to your adding of "Portable settings feature", the start/exit time of NVIL as increased considerably.
Normally(previous version), start time of NVIL was approx 10 seconds on my setup. That is now approx 70 seconds, an increase of 600% Closing down of NVIL (when nothing changed in scene/nothing to be saved) now appears to be unresponsive for approx 15 seconds (was immediate before).

I thought NVIL start up was slow before, but now, it is far too slow for my liking. Plus, the searching of my external removable backup drives (for any reason) is not acceptable.

I will not be using this new version, or any other that behaves this way.

Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: Vaquero on March 13, 2013, 02:39:07 pm
Not on my end. It only takes a few seconds, closing takes like 2 seconds.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 13, 2013, 02:48:54 pm
Even with a new config and all external drives removed, still same issue. (but only in this latest build)

I would need to monitor NVIL start up/exit to see what is happening, but do not currently have the time/patience for that.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: Passerby on March 13, 2013, 04:34:43 pm
opens in under 2 seconds for me.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 13, 2013, 04:54:09 pm
Well, something as changed in the new build to cause this issue on my setup. I know it took a while to load before, due to all the .net crap it loads, but now, far too long.

I was going to try on a default windows installation, but do not see the point. My setup as not changed, NVIL as.

.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 13, 2013, 06:53:33 pm
Steve, What is the time for the Mar 11 built. It was before the portable feature was added.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 13, 2013, 07:01:17 pm
Hi IStonia,

That build is OK, the same as previous.

One thing I have noticed, is that when NVIL(latest build) loads, it appears to stop (no file/reg activity) for periods of about 4-5 seconds repeatedly(CPU drops to zero) then continues to load. I thought at first it was trying to scan attached HD or access Internet, but do not see that in logs.
So I am not sure what the problem is, or why only I am seeing the problem.
I also tried with new config and removing NVILs reg entries, but still the same problem.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 13, 2013, 07:43:06 pm
There could be plug-in device cause that. Maybe a scanner or printer. I will add an default off option for this.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: Passerby on March 13, 2013, 08:50:15 pm
would perhaps a better way of doing portable settings would be have NVIL take launch arguments, where a absolute or relative path could be defined to the settings?

see a few advantages of this.

First of all it would stop NVil from having to search for the settings, which im sure on a system like my would be a lot of work since i got 3 internal drives and 4 external drives.

Second of all it would allow people to switch settings simply by running NVil with a different shortcut, that has different arguments with in it.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 13, 2013, 09:35:28 pm
Passerby, that way may cause confusing. Since the settings on PC and the portable folder can be different, so it's better for people to do it in the way they have chosen all the time.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 14, 2013, 12:53:54 am
There could be plug-in device cause that. Maybe a scanner or printer.

No scanner or printer attached. I even went into the computer and physically unplugged the 2nd HD to check if that was a problem.

The thing is, why should we even be wondering if a scanner of printer being plugged into the PC could cause NVIL to load/exit soo slow? That to me is a problem in itself.
If someone sees an application, such as NVIL, scanning the external HD/usb drives, at best it will be classed as intrusive, as worst classed as malware. Even some HIPs/malware scanners I have used would intercept that behavior and flag or quarantine NVIL
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 02:50:36 am
It seems the only possible thing is that the retrieving directory info operation is time consuming in your system.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 14, 2013, 03:25:52 am
As I mentioned above, I removed all external drives, even removed a 2nd internal drive. All that was left was the main C: drive. Are you putting forward that NVIL will also attempt to retrieve full directory info from my main OS drive? I thought the implementation was for it to check external attached drives? That in itself can be an issue if I have one of my main external backup drives attached, which contains many thousands of directories (many years of file backups/projects etc).


Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 05:06:59 am
Here is the full code


                if (PortableUserSettingFolderEnabled)
                {
                    ArrayList dirs = new ArrayList();

                    DriveInfo[] driveInfos = DriveInfo.GetDrives();
                    foreach (DriveInfo drive in driveInfos)
                    {
                        if (drive.DriveType == DriveType.Removable && drive.IsReady)
                        {
                            if (drive.RootDirectory == null)
                                continue;

                            dirs.Add(drive.RootDirectory);
                        }
                    }

                    int level = 0;
                    while (dirs.Count > 0)
                    {
                        ArrayList dirsNew = new ArrayList();

                        foreach (DirectoryInfo di in dirs)
                        {
                            DirectoryInfo[] dirsTemp = di.GetDirectories();
                            foreach (DirectoryInfo diTemp in dirsTemp)
                            {
                                if (diTemp.Name == "NVil Portable User Settings")
                                    return diTemp.FullName;

                                dirsNew.Add(diTemp);
                            }
                        }

                        dirs = dirsNew;

                        level++;
                        if (level > 5)
                            break;
                    }
                }

As you can see, the 'PortableUserSettingFolderEnabled' is added and by default it is off. So you don't have to worry about it from the next update if you will never turn it on.

I guess the first operation
DriveInfo[] driveInfos = DriveInfo.GetDrives();
takes quite some time in your system even if you don't have any external devices attached.

Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 14, 2013, 05:40:30 am
I guess the first operation
DriveInfo[] driveInfos = DriveInfo.GetDrives();
takes quite some time in your system even if you don't have any external devices attached.

I do not see how, as that is only retrieving the logical drive names.
I will see if I can find time to monitor .net during NVIL startup.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 05:53:14 am
IStonia,why check five subdirectories? And why check, flash drive or not. Maybe better to do a direct test: if the folder Nvil User Setting resides in folder NVil --> Portable

by the way, does affect the long name "Nvil User Setting" for the performance?
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 06:01:02 am
molebox, some one asked for it. He uses NVil at home and at work and he wants to keep the settings in one place, his flash drive, so he doesn't have to transfer the settings every time he makes changes.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 06:06:14 am
It is problems by users =)
When changed a options on the flash it will be copy to HDD?
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 06:29:53 am
It is not a problem. By default, the changes you make are saved into a folder under your user account in your C: drive. You can't port your Hard Drive to your work place miles away, can you? But this option can let you save it into your flash drive and you can carry it anywhere you like. Not under water though.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 14, 2013, 06:38:39 am
I created a folder for the mobile settings on a removable USB flash drive, and NVIL started as normal, saved settings etc, and closed as normal. Very strange, as after removing the USB flash, NVIL still started/exit OK.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 07:05:04 am
IStonia, we do not understand each other =)

(http://i.imgur.com/mkz1cs0.png)

To add in menu:

Save a options in ..   - It is copy NVil User Setting. For portable "you" need to save it in NVil folder (for example USB Flash/NVil)
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 07:24:28 am
Agree, we still don't. Are you making suggestions or are you pointing out problems in the diagram. What I am currently implenting is, user can make his option to use it or not in preference form. The option will be saved into the local pc's registry. If the option is on, the app will try to search the usb first. If the search failed, the app will use the default folder.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 07:46:25 am
What prevents a user to use two copies?
1. Portable. With help of the point menu he can to copy a settings from user account into portable version (Him need only select the NVil folder on USB Flash). It is version may start from USB flash
2. The base version on home computer

p.s. portable version should not use the registry
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 12:16:19 pm
I don't think it is practical. Each time for a new update, you have to create two copies for the two versions.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 01:46:26 pm
I don't think it is practical. Each time for a new update, you have to create two copies for the two versions.
In Russia there is a saying: you love to ride, love and carry the sleigh for a  (google translate -probably poorly translated ). I.e. if you want fresh version of the NVil -> will update it

Ok.
 User worked on the job. Run NVil on the USB Flash. Changed a setting. Came home. What will happen to the settings on the home computer?
--------------
Ah, i understand. You want when user start NVil on HDD, was used a settings from USB Flash (if portable) ?
I.e. one copy of NVil and different settings, right?

But on the job is all the same need to update the version of the NVil.
-----------------------------
What if I want to have two copies of NVil but with different settings? But I do not want to use USB Flash? How many portable applications i used - all worked like on my block diagram.



Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 14, 2013, 03:34:43 pm
Hi IStonia,

I found what is causing the problem. My Motherboard BIOS was set with having a 3.5 floppy attached, but there is not one attached. I disabled that, and NVIL starts correctly.

Not sure yet as to why NVIL would have problem with that, unless it is trying to map the non-existent drive?

Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 04:40:49 pm
Yes, it is can cause a problem. A few years ago i removed 3.5 drive and forget to disable it in BIOS. Then randomly chose this disc in the file manager - a file manager hung  a few seconds.
It seems, 3.5 drive is removable disk, like USB flash. When NVil gets a list of all the removable disks, he turns to the 3.5 disk and hung by a few seconds.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 14, 2013, 05:13:05 pm
It seems, 3.5 drive is removable disk, like USB flash. When NVil gets a list of all the removable disks, he turns to the 3.5 disk and hung by a few seconds.

Such a drive will show as hardware, but not as active or ready. It is similar to USB ports, they are hardware, but not active/ready until USB drive attached.
Attempted mapping of such a non-existent not-ready drive is, well, not good.

To me, it is just windows/.net that is all bloat-ware, poorly patched together bad code. I think it is getting close to my making full switch to Linux.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 05:24:42 pm
I think what IStonia need to exclude A: and B: - they usually using for virtual disk or real 3.5 disk or have any other information?


IStonia uploaded new version. Are you tested?

Quote
To me, it is just windows/.net that is all bloat-ware, poorly patched together bad code. I think it is getting close to my making full switch to Linux.
Certainly in linux has its own nuances and problems. I'm don't like .NET, too. Sorry that .NET has become popular, but then it probably would not be NVil  :P
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 09:21:14 pm
I think what IStonia need to exclude A: and B: - they usually using for virtual disk or real 3.5 disk or have any other information?

The problem is people can change the dirve letters, although it is rare.


What if I want to have two copies of NVil but with different settings? But I do not want to use USB Flash? How many portable applications i used - all worked like on my block diagram.

Why you need two copies of NVil of the same version for? For each of the copy you have to make a directory setting and you have to do this for every new update. I have a few folders, "Passerby User Settings", "Vaquero User Settings" and "My User Settings". When I need one of them, I just copy and paste it to the right loaction, then change its name to "User Settings".
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 09:58:57 pm
The problem is people can change the dirve letters, although it is rare.
I did not come across on the Internet.

Quote
Why you need two copies of NVil of the same version for? For each of the copy you have to make a directory setting and you have to do this for every new update. I have a few folders, "Passerby User Settings", "Vaquero User Settings" and "My User Settings". When I need one of them, I just copy and paste it to the right loaction, then change its name to "User Settings".
For example, a one version has bug, but not enough a function which in new, other version . Or for test.

I do not understand one thing (allocated by red color).You certainly know better how to implement portability. Therefore, after the answer to the question, I will close for yourself this question  :)

Quote
User worked on the job. Run NVil on the USB Flash. Changed a setting. Came home. What will happen to the settings on the home computer?
--------------
Ah, i understand. You want when user start NVil on HDD, was used a settings from USB Flash (if portable) ?
I.e. one copy of NVil and different settings, right?

But on the job is all the same need to update the version of the NVil.


Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 14, 2013, 10:20:48 pm
molebox, it seems there is a glass wall between us. We can see each other but we can't hear each other. lol.

Check this
http://windows.microsoft.com/en-us/windows-vista/change-add-or-remove-a-drive-letter

Every update uses the same config file folder. Do you know where it is?

If a user set every PC he uses to use the same config file folder which resides in his USB drive, he can make some setting changes in one PC then cary the USB drive to another PC and he can use the latest settings made in the last PC on the second PC "Straight Away" by just plugging in the USB drive.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 14, 2013, 11:07:53 pm
molebox, it seems there is a glass wall between us. We can see each other but we can't hear each other. lol.

Check this
http://windows.microsoft.com/en-us/windows-vista/change-add-or-remove-a-drive-letter
Ha-ha  ;D I know about it. Just I did not seen who changed HDD by A:\  ;-)

Quote
Every update uses the same config file folder. Do you know where it is?
Yes, of course. I'm advanced user PC  ;-)

Quote
If a user set every PC he uses to use the same config file folder which resides in his USB drive, he can make some setting changes in one PC then cary the USB drive to another PC and he can use the latest settings made in the last PC on the second PC "Straight Away" by just plugging in the USB drive.

I see the glass wall ;-) 

the user has two ways:
1. the user has 2 copy of the NVil - a) on usb flash  b) on home pc  - using a settings only from usb-version  --> him need to update 2 versions of the NVil. ---> you can to use my variant of the portable (diagram). A settings he can to update with help menu--> save options(if you to add it)

2. the user has only 1 copy NVil on the usb-flash.  --> you can to use my variant of the portable (diagram)

Where i wrong? There are other variants? Why reinvent the wheel? ;-)




Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: steve on March 14, 2013, 11:41:51 pm
Hi molebox,

1. the user has 2 copy of the NVil - a) on usb flash  b) on home pc 

The new option is "NVil Portable User Settings"

It is only intended so that the settings for NVIL can be placed on a usb flash drive, and those setting can then be used on various different PC`s

When NVIL starts it will check to see if there is a usb drive attached and check for the portable folder, if found, NVIL will use that folder for config. If usb not attached, or usb attached but no portable folder, then default config used on HD.

Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 15, 2013, 12:00:06 am
damn! п*зде* (sorry, it is obscene word in Russian 8) )

in front of me all the time were the words NVil Portable , NVil Portable  ;D

I downloaded a minute ago Gimp Portable

I hate it word, now =)))

Very big thanks steve!
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: IStonia on March 15, 2013, 12:07:23 am
molebox, I think I might understand a little bit now.

If I am right, these are what you are talking about.

File > Upload Settings from USB
File > Download Settings to USB

I just try to avoid using the word 'P..table' in case I may get п*зде*.

But I wonder how often people may use this and you can do it manually when you need. Adding new things will always cause confusion and make the inferface more crowded.
Title: Re: Build mar-12-13 start up time: 600% increase.
Post by: molebox on March 15, 2013, 12:26:39 am
molebox, I think I might understand a little bit now.

If I am right, these are what you are talking about.

File > Upload Settings from USB
File > Download Settings to USB
Yes. Only Upload/Download using for internet. Copy or Save As better. I had the idea to use this dropbox or something similar for storing settings, but ..

Quote
I just try to avoid using the word 'P..table' in case I may get п*зде*.
=) п*зде* - it is "pussy"+finish(crash) .This refers to a situation. I spend every post from 10-40 minutes and everything was so simple :o     

p.s. LOL. Google translate is know it is word;D
p.p.s. there are pros : more I read the text -> learn English
p.p.p.s. if I wrote a bad word, then tell me, I will correct. Just the word "pussy" we write in the newspapers, when the "famous" band Pussy Riot