GPSFileDepot Forums

General Category => Map Making Support => Topic started by: whiskeyportal on April 12, 2016, 01:02:30 PM

Title: cgpsmapper and Windows 10
Post by: whiskeyportal on April 12, 2016, 01:02:30 PM
Has anyone ran cgpsmapper on Windows 10? And if so, were there any issues? Just wondering whether I'll have any issues if when I upgrade my machine it comes with 10.
Thanks for any feedback you might be able to provide.
Title: Re: cgpsmapper and Windows 10
Post by: -Oz- on April 12, 2016, 07:46:59 PM
I've been using it for all my 2016 updates and no issues.
Title: Re: cgpsmapper and Windows 10
Post by: whiskeyportal on July 28, 2016, 12:43:40 PM
It seems to be running fine on some of my machines, but completely kills the new VM running windows 10. As soon as you try and do anything with cgps the machine reboots.
Anyone else ran into this issue?
Thanks
Title: Re: cgpsmapper and Windows 10
Post by: jolly47roger on July 28, 2016, 01:12:45 PM
I run Basecamp under Windows 10 with no problem - except that if I try to run parallel streams they sometimes seem to conflict and one will fail. But that may not be specific to W10.
Title: Re: cgpsmapper and Windows 10
Post by: whiskeyportal on July 28, 2016, 04:33:04 PM
I run into the same issue where more than one instance starting at the same time will cause access violation errors, but usually I can have 3 instances running fine.
The issue I'm having is that cgps won't run on a Virtual Machine. Anyone else had this issue and were they able to find a work around?
Title: Re: cgpsmapper and Windows 10
Post by: Red90 on July 29, 2016, 08:25:24 AM
No problems here.
Title: Re: cgpsmapper and Windows 10
Post by: whiskeyportal on July 29, 2016, 10:35:29 AM
Quote from: Red90 on July 29, 2016, 08:25:24 AM
No problems here.
You're running cgps on a VM? Are you using windows 10?
Title: Re: cgpsmapper and Windows 10
Post by: popej on July 29, 2016, 11:28:32 AM
Quote from: whiskeyportal on July 28, 2016, 04:33:04 PM
I run into the same issue where more than one instance starting at the same time will cause access violation errors, but usually I can have 3 instances running fine.
I have experienced the same problem, actually there are 2 separate problems. First is obvious - you should use separate temporary directory for each instance (as indicated by TEMP or TMP variable, not sure which one). Second problem is more weird, like there is some kind of crosstalk between instances. I have solved it by setting different affinity for each instance, so it runs on separate CPU core.

I usually run 8 instances at once starting them with batch that set TEMP/TMP variables and affinity for each one. Something like this:

set TEMP=.\instance1
set TMP=.\instance1
start "cgpsmapper instance 1" /AFFINITY 0x01 cgpsmapper .....
Title: Re: cgpsmapper and Windows 10
Post by: whiskeyportal on August 02, 2016, 11:19:33 AM
Quote from: popej on July 29, 2016, 11:28:32 AM
Quote from: whiskeyportal on July 28, 2016, 04:33:04 PM
I run into the same issue where more than one instance starting at the same time will cause access violation errors, but usually I can have 3 instances running fine.
I have experienced the same problem, actually there are 2 separate problems. First is obvious - you should use separate temporary directory for each instance (as indicated by TEMP or TMP variable, not sure which one). Second problem is more weird, like there is some kind of crosstalk between instances. I have solved it by setting different affinity for each instance, so it runs on separate CPU core.

I usually run 8 instances at once starting them with batch that set TEMP/TMP variables and affinity for each one. Something like this:

set TEMP=.\instance1
set TMP=.\instance1
start "cgpsmapper instance 1" /AFFINITY 0x01 cgpsmapper .....

that's a good idea. I have just been using different folders with cgps in them, and at the end of a python script I had each instance wait 1 second before kicking off the next transcode.bat. I'll try your method for sure and see how many I can run safely. Do you edit the process.bat file? I'd love to check out how you scripted it.

Still haven't figured out why it won't run at all on a Virtual Machine though.
Title: Re: cgpsmapper and Windows 10
Post by: popej on August 06, 2016, 02:17:10 AM
Problems in VM could be due to protection scheme, that cGPSmapper is using.

I don't use process.bat. I have my own procedures and tool chain. For compilation I have prepared 8 folders called A1 to A8, each with batches _kompilacja.cmd like this:
set MDIR=temp_dir
rd /Q /S %MDIR%
md %MDIR%
set TMP=%MDIR%
set TEMP=%MDIR%
for %%i in (*.mp) do "C:\Program Files (x86)\cGPSmapperRoutable\cgpsmapper.exe" -s x -l "%%i"
rd /Q /S %MDIR%


Then I have a batch copy_cgps.bat, which copy source files to all folders and execute compilation. Input option to batch is path to folder with source mp files.
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
set WORKDIR=C:\Garmin\cGPSmapper

SET /A numer=0
for /F %%I in ('dir /B /O:-S %1\*.mp') do (
if !numer! GEQ 8 (
set /A numer=1
) else (
SET /A numer=!numer! +1
)
copy %1\%%I %WORKDIR%\A!numer!
)

pushd %WORKDIR%\A1
start "cgpsmapper A1" /MIN /BELOWNORMAL /AFFINITY 0x1 cmd /C _kompilacja.cmd
popd
pushd %WORKDIR%\A2
start "cgpsmapper A2" /MIN /BELOWNORMAL /AFFINITY 0x4 cmd /C _kompilacja.cmd
popd
pushd %WORKDIR%\A3
start "cgpsmapper A3" /MIN /BELOWNORMAL /AFFINITY 0x10 cmd /C _kompilacja.cmd
popd
pushd %WORKDIR%\A4
start "cgpsmapper A4" /MIN /BELOWNORMAL /AFFINITY 0x40 cmd /C _kompilacja.cmd
popd
pushd %WORKDIR%\A5
start "cgpsmapper A5" /MIN /BELOWNORMAL /AFFINITY 0x80 cmd /C _kompilacja.cmd
popd
pushd %WORKDIR%\A6
start "cgpsmapper A6" /MIN /BELOWNORMAL /AFFINITY 0x20 cmd /C _kompilacja.cmd
popd
pushd %WORKDIR%\A7
start "cgpsmapper A7" /MIN /BELOWNORMAL /AFFINITY 0x8 cmd /C _kompilacja.cmd
popd
pushd %WORKDIR%\A8
start "cgpsmapper A8" /MIN /BELOWNORMAL /AFFINITY 0x2 cmd /C _kompilacja.cmd
popd

ENDLOCAL


This is a bit simplified version, my actual scripts set up ramdisk for temporary directory and preserve log files from compilation.
Title: Re: cgpsmapper and Windows 10
Post by: whiskeyportal on August 10, 2016, 10:08:33 AM
Interesting approach. I'll have to try that. I'm experimenting using this section of script to kick off 4 runs at the same time
print subprocess.Popen("cd c:\cgpsprocessing\cgpsrun1", shell=True, stdout=subprocess.PIPE).stdout.read()
os.chdir("c:\cgpsprocessing\cgpsrun1")
print subprocess.Popen("start /affinity 0x3 transcode.bat", shell=True, stdin=None, stdout=None, stderr=None, close_fds=True)
print("run 1 started using cores 0 & 1")
time.sleep(3)
print subprocess.Popen("cd c:\cgpsprocessing\cgpsrun2", shell=True, stdout=subprocess.PIPE).stdout.read()
os.chdir("c:\cgpsprocessing\cgpsrun2")
print subprocess.Popen("start /affinity 0xC transcode.bat", shell=True, stdin=None, stdout=None, stderr=None, close_fds=True)
print("run 2 started using cores 2 & 3")
time.sleep(3)
print subprocess.Popen("cd c:\cgpsprocessing\cgpsrun3", shell=True, stdout=subprocess.PIPE).stdout.read()
os.chdir("c:\cgpsprocessing\cgpsrun3")
print subprocess.Popen("start /affinity 0x30 transcode.bat", shell=True, stdin=None, stdout=None, stderr=None, close_fds=True)
print("run 3 started using cores 4 & 5")
time.sleep(3)
print subprocess.Popen("cd c:\cgpsprocessing\cgpsrun4", shell=True, stdout=subprocess.PIPE).stdout.read()
os.chdir("c:\cgpsprocessing\cgpsrun4")
print subprocess.Popen("start /affinity 0xC0 transcode.bat", shell=True, stdin=None, stdout=None, stderr=None, close_fds=True)
print("run 1 started using cores 6 & 7")

I'm using python for this. I'm trying the sleep function in between starting runs for this example to try and stop the  Access violation errors, but I keep getting hit with them, and Error R007:Node reduction errors which is really annoying when you're trying to run a huge map and it stops processing a run all night.

Right now I have a python script I wrote that copies 5 processing folders, each with copies of cgpsmapper in the, to processing folders. Then checks mp_types for errors, and builds catalogs in global mapper. Then it imports those catalogs and tiles them out in .mp format. When it's finished, it erases all blank .mp files, and move the .mp files over 150Mb to another working directory and splits them up more. Then it writes a list of all the .mp files, and splits that list by a number I specify in the script and writes those as transcodeq.txt files. Then it sends me an email notifying me that it is kicking off cgpsmapper runs, and starts them. If I could just get rid of the access violation errors life would be great.
Title: Re: cgpsmapper and Windows 10
Post by: popej on August 11, 2016, 03:08:30 AM
I get no crashes anymore. I used to get them, before designing my procedure.

Do your scripts set environment variables for temporary directory? cGPSmapper creates temporary files while compiling a map. It uses some kind of random name for subfolder in temporary directory, but I think it uses time expressed in seconds as a random value and conflicts are still possible.
Title: Re: cgpsmapper and Windows 10
Post by: whiskeyportal on August 11, 2016, 09:23:01 AM
No, I'm not making temporary directories. But I will from now on for sure. Do you mind if I use your examples?
Title: Re: cgpsmapper and Windows 10
Post by: popej on August 11, 2016, 01:39:27 PM
You are welcome use or adopt my scripts.
Title: Re: cgpsmapper and Windows 10
Post by: santana on September 19, 2016, 02:50:57 PM
Does anybody know where you can download cgpsmapper? Original site (cgpsmapper.com) seems to be down.

Thanks in advance.
Title: Re: cgpsmapper and Windows 10
Post by: Boyd on September 19, 2016, 02:57:18 PM
Quote from: santana on September 19, 2016, 02:50:57 PM
Does anybody know where you can download cgpsmapper? Original site (cgpsmapper.com) seems to be down.

When all else fails, try the wayback machine. :)

https://web.archive.org/web/20160729044401/http://cgpsmapper.com/buy.htm
Title: Re: cgpsmapper and Windows 10
Post by: -Oz- on September 22, 2016, 08:37:20 PM
This is cgpsmapper personal. I'm not sure it works without a key though. https://www.gpsfiledepot.com/tools/cgpsmapperPersonalSetup.exe

Here is the free version:
https://www.gpsfiledepot.com/tools/CGPSMapperFreeSetup.exe
Title: Re: cgpsmapper and Windows 10
Post by: Seldom on December 14, 2016, 12:50:55 PM
Hello again, guys. 

I own a copy of cgpsmapper Personal (that I used to make BigDesertSouthwest), and am trying to transfer the license to a new PC.  Alas, the Hardware finger prints don't match, so it won't work, even if the Registration Key is accepted.

Is there any way to get this transferred, and/or what are today's substitutes for a routable cgpsmapper?  Do I need to redo all my batch files for mkgmap?

Title: Re: cgpsmapper and Windows 10
Post by: popej on December 14, 2016, 04:12:48 PM
You can simply run mkgmap like that:
>java -jar mkgmap.jar file.mp

Mkgmap is quite compatible with cgpsmapper, but there are some missing features. Main problem is that multiple "data" lines aren't processed correctly. You have to convert all objects with multiple "data" into simpler versions with single "data".

Line "numbers" doesn't support address (country, region, city, zip) and there is no support for double addresses for a single road. Road signs are missing. There is no equivalent of "MG=Y" or "Numbering=Y". You either have a routable map or no addressing at all (but you can remove routing after creating img).  I'm not sure about sections like [Countries], [Regions], [Cities] or [Dictionary], probably not supported.

Cpreview functionality is build in, you can create full mapset with a following command:
>java -jar mkgamp.jar --tdb *.img

or simply in a single pass:
>java -jar mkgmap.jar --tdb *.mp

Cpreview parameters, that comes in control file (FID, map name), are replaced with command line options. The same goes for some directives from mp header. See doc for command line options, doc comes with mkgmap.

Mkgmap supports multithreading, last command example can compile multiple mp sources simultaneously. It runs with 64-bit and 32-bit java, but 64-bit version have access to more RAM memory, which helps.


Title: Re: cgpsmapper and Windows 10
Post by: Seldom on December 14, 2016, 05:06:08 PM
Thanks, popej.
Title: Re: cgpsmapper and Windows 10
Post by: -Oz- on December 20, 2016, 08:07:28 PM
Quote from: Seldom on December 14, 2016, 12:50:55 PM
Hello again, guys. 

I own a copy of cgpsmapper Personal (that I used to make BigDesertSouthwest), and am trying to transfer the license to a new PC.  Alas, the Hardware finger prints don't match, so it won't work, even if the Registration Key is accepted.

Is there any way to get this transferred, and/or what are today's substitutes for a routable cgpsmapper?  Do I need to redo all my batch files for mkgmap?


I just contacted them at cgpsmapper.com and he was able to provide me a new key. Still very receptive.