Forum Replies Created
-
AuthorPosts
-
Ophidian14Participant
Here’s an example of #2. I right-clicked on a type name and did Go to Definition. The type was defined in an #include that was directly included in this .cpp that I was editing. VS2017 was completely frozen for the entire time this was happening. Thoughts?
[+1:12:18.091] GoTo request: GotoDefn [+1:12:18.092] Preparing for GoTo parsing [+1:12:18.092] Starting GoTo parsing [+1:12:18.092] Starting operation: Parse - Goto [+1:12:18.094] Found entity at cursor location: BT::Communication::ITcpCommunicatorListener=s (b) [+1:12:18.095] Operation completed: Parse - Goto [3 msec] [+1:12:18.118] [0%] gftoCheckingForModifications [+1:12:18.252] [1%] gftoCheckingForModifications [+1:12:18.375] [2%] gftoCheckingForModifications [+1:12:18.582] [3%] gftoCheckingForModifications [+1:12:18.638] \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp has not changed since last build. Doing a quick recheck.. [+1:12:18.719] [4%] gftoCheckingForModifications [+1:12:18.814] [5%] gftoCheckingForModifications [+1:12:18.840] [6%] gftoCheckingForModifications [+1:12:18.919] [7%] gftoCheckingForModifications [+1:12:19.050] [8%] gftoCheckingForModifications [+1:12:19.189] [9%] gftoCheckingForModifications [+1:12:19.319] [10%] gftoCheckingForModifications [+1:12:19.474] [11%] gftoCheckingForModifications [+1:12:19.607] [12%] gftoCheckingForModifications [+1:12:19.742] [14%] gftoCheckingForModifications [+1:12:19.886] [15%] gftoCheckingForModifications [+1:12:20.036] [16%] gftoCheckingForModifications [+1:12:20.169] [17%] gftoCheckingForModifications [+1:12:20.304] [18%] gftoCheckingForModifications [+1:12:20.471] [19%] gftoCheckingForModifications [+1:12:20.639] [20%] gftoCheckingForModifications [+1:12:20.761] [21%] gftoCheckingForModifications [+1:12:20.890] [22%] gftoCheckingForModifications [+1:12:21.053] [23%] gftoCheckingForModifications [+1:12:21.178] [24%] gftoCheckingForModifications [+1:12:21.250] [25%] gftoCheckingForModifications [+1:12:21.339] [27%] gftoCheckingForModifications [+1:12:21.532] [28%] gftoCheckingForModifications [+1:12:21.643] [29%] gftoCheckingForModifications [+1:12:21.756] [30%] gftoCheckingForModifications [+1:12:21.842] [31%] gftoCheckingForModifications [+1:12:21.974] [32%] gftoCheckingForModifications [+1:12:22.093] [33%] gftoCheckingForModifications [+1:12:22.139] Saved data for \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp is up to date [+1:12:22.139] Starting fpsParsingFileBody on \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp [+1:12:22.229] [34%] gftoCheckingForModifications [+1:12:22.369] [35%] gftoCheckingForModifications [+1:12:22.452] Starting fpsAnalyzingReferences on \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp [+1:12:22.542] [36%] gftoCheckingForModifications [+1:12:22.689] [37%] gftoCheckingForModifications [+1:12:22.808] [38%] gftoCheckingForModifications [+1:12:22.929] [40%] gftoCheckingForModifications [+1:12:23.068] [41%] gftoCheckingForModifications [+1:12:23.201] [42%] gftoCheckingForModifications [+1:12:23.330] [43%] gftoCheckingForModifications [+1:12:23.527] [44%] gftoCheckingForModifications [+1:12:23.672] [45%] gftoCheckingForModifications [+1:12:23.804] [46%] gftoCheckingForModifications [+1:12:23.938] [47%] gftoCheckingForModifications [+1:12:24.076] [48%] gftoCheckingForModifications [+1:12:24.210] [49%] gftoCheckingForModifications [+1:12:24.323] [50%] gftoCheckingForModifications [+1:12:24.350] Completed fpsAnalyzingReferences on \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp [+1:12:24.408] Completed fpsParsingFileBody on \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp [+1:12:24.408] Checking \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp for missing headers.. [+1:12:24.408] No missing headers for \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp [+1:12:24.434] Could not determine name type for BT::Communication::ITcpCommunicatorListener. Search results may be inaccurate. [+1:12:24.434] Found 1 TUs with matching names to search for BT::Communication::ITcpCommunicatorListener [+1:12:24.434] Searching in \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Private\TcpCommunicator.cpp from C:\Users\caseltine\Documents\VisualGDB\HighFrequency90\HighFrequency90.vcxproj... [+1:12:24.509] [51%] gftoCheckingForModifications [+1:12:24.649] [52%] gftoCheckingForModifications [+1:12:24.786] [54%] gftoCheckingForModifications [+1:12:24.917] [55%] gftoCheckingForModifications [+1:12:25.020] [56%] gftoCheckingForModifications [+1:12:25.035] [57%] gftoCheckingForModifications [+1:12:25.059] [58%] gftoCheckingForModifications [+1:12:25.064] [59%] gftoCheckingForModifications [+1:12:25.120] [60%] gftoCheckingForModifications [+1:12:25.144] [61%] gftoCheckingForModifications [+1:12:25.173] [62%] gftoCheckingForModifications [+1:12:25.219] [63%] gftoCheckingForModifications [+1:12:25.245] [64%] gftoCheckingForModifications [+1:12:25.285] [65%] gftoCheckingForModifications [+1:12:25.344] [67%] gftoCheckingForModifications [+1:12:25.407] [68%] gftoCheckingForModifications [+1:12:25.427] [69%] gftoCheckingForModifications [+1:12:25.517] [70%] gftoCheckingForModifications [+1:12:25.531] [71%] gftoCheckingForModifications [+1:12:25.542] [72%] gftoCheckingForModifications [+1:12:25.545] [73%] gftoCheckingForModifications [+1:12:25.549] [74%] gftoCheckingForModifications [+1:12:25.553] [75%] gftoCheckingForModifications [+1:12:25.559] [76%] gftoCheckingForModifications [+1:12:25.572] [77%] gftoCheckingForModifications [+1:12:25.579] [78%] gftoCheckingForModifications [+1:12:25.589] [80%] gftoCheckingForModifications [+1:12:25.602] [81%] gftoCheckingForModifications [+1:12:25.605] [82%] gftoCheckingForModifications [+1:12:25.609] [83%] gftoCheckingForModifications [+1:12:25.612] [84%] gftoCheckingForModifications [+1:12:25.618] [85%] gftoCheckingForModifications [+1:12:25.622] [86%] gftoCheckingForModifications [+1:12:25.625] [87%] gftoCheckingForModifications [+1:12:25.629] [88%] gftoCheckingForModifications [+1:12:25.632] [89%] gftoCheckingForModifications [+1:12:25.636] [90%] gftoCheckingForModifications [+1:12:25.639] [91%] gftoCheckingForModifications [+1:12:25.642] [92%] gftoCheckingForModifications [+1:12:25.646] [94%] gftoCheckingForModifications [+1:12:25.650] [95%] gftoCheckingForModifications [+1:12:25.653] [96%] gftoCheckingForModifications [+1:12:25.658] [97%] gftoCheckingForModifications [+1:12:25.661] [98%] gftoCheckingForModifications [+1:12:25.665] [99%] gftoCheckingForModifications [+1:12:25.667] [0%] gftoScanningFile positioncoordinatordatabaseaccess.cpp [+1:12:25.668] Cannot open \\10.10.161.129\build\cfa\laser\laser\bt.relationaldata\private\positioncoordinatordatabaseaccess.cpp: no such file or directory [+1:12:25.668] [0%] gftoScanningFile fitinputsfacade.cpp [+1:12:25.668] Cannot open \\10.10.161.129\build\cfa\laser\laser\compass\bt.paravane\business\fitinputsfacade.cpp: no such file or directory [+1:12:25.668] [0%] gftoScanningFile positionmanager.cpp [+1:12:25.669] Cannot open \\10.10.161.129\build\cfa\laser\laser\compass\bt.paravane\business\positionmanager.cpp: no such file or directory [+1:12:25.669] [1%] gftoScanningFile deltapositionsnapshot.cpp [+1:12:25.670] Cannot open \\10.10.161.129\build\cfa\laser\laser\compass\bt.paravane\infrastructure\deltapositionsnapshot.cpp: no such file or directory [+1:12:25.670] [1%] gftoScanningFile transmissiongroupmappingcontroller.cpp [+1:12:25.670] Cannot open \\10.10.161.129\build\cfa\laser\laser\mdsnapshotpersister\bt.mdsnapshotpersister\bt.mdsnapshotpersister.dataaccess\transmissiongroupmappingcontroller.cpp: no such file or directory [+1:12:25.670] [2%] gftoScanningFile mdsnapshotpersisterdatabaseaccess.cpp [+1:12:25.670] Cannot open \\10.10.161.129\build\cfa\laser\laser\mdsnapshotpersister\bt.mdsnapshotpersister\bt.mdsnapshotpersister.dataaccess\mdsnapshotpersisterdatabaseaccess.cpp: no such file or directory [+1:12:25.670] [2%] gftoScanningFile mdsnapshotpersistermanagement.cpp [.....] [+1:12:25.810] [198%] gftoScanningFile positionfirminfosyscachetests.cpp [+1:12:25.810] Cannot open \\10.10.161.129\build\cfa\laser\laser\bt.chronosclient\tests\positionfirminfosyscachetests.cpp: no such file or directory [+1:12:25.810] [198%] gftoScanningFile positionclient.cpp [+1:12:25.810] Cannot open \\10.10.161.129\build\cfa\laser\laser\bt.chronosclient\private\derived\positionclient.cpp: no such file or directory [+1:12:25.810] [198%] gftoScanningFile marketdatasnapshot.pb.h [+1:12:25.810] Cannot open \\10.10.161.129\build\cfa\laser\laser\contracts\marketdatasnapshot.pb.h: no such file or directory [+1:12:25.816] [100%] gftoDone [+1:12:25.961] Completed fpsBuildingPreamble on \\10.10.161.129\build\cfa\laser\laser\bt.communication\private\tcpcommunicator.cpp [+1:12:25.962] Successfully rebuilt PSF 1 (normal preamble).. [+1:12:25.962] Saving PSF 1 (normal preamble) to C:\Users\caseltine\Documents\VisualGDB\HighFrequency90\CodeDB\HighFrequency90-Debug-Win32.0001\tcpcommunicator.npd.. [+1:12:25.962] Starting fpsSavingPSF on \\10.10.161.129\build\cfa\laser\laser\bt.communication\private\tcpcommunicator.cpp [+1:12:25.963] Completed fpsSavingPSF on \\10.10.161.129\build\cfa\laser\laser\bt.communication\private\tcpcommunicator.cpp [+1:12:25.963] Successfully saved PSF 1 (normal preamble).. [+1:12:25.963] Starting fpsParsingFileBody on \\10.10.161.129\build\cfa\laser\laser\bt.communication\private\tcpcommunicator.cpp [+1:12:26.372] Starting fpsAnalyzingReferences on \\10.10.161.129\build\cfa\laser\laser\bt.communication\private\tcpcommunicator.cpp [+1:12:28.256] Completed fpsAnalyzingReferences on \\10.10.161.129\build\cfa\laser\laser\bt.communication\private\tcpcommunicator.cpp [+1:12:28.323] Completed fpsParsingFileBody on \\10.10.161.129\build\cfa\laser\laser\bt.communication\private\tcpcommunicator.cpp [+1:12:28.324] Found definition in \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Private\TcpCommunicator.cpp. [+1:12:28.334] \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Public\ITcpCommunicatorListener.h belongs to a compatible project and will be handled by our engine [+1:12:28.336] \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Public\ITcpCommunicatorListener.h belongs to a compatible project and will be handled by our engine [+1:12:28.347] Checking \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp for missing headers.. [+1:12:28.347] No missing headers for \\10.10.161.129\build\cfa\laser\magnum\custom\test90_4.cpp [+1:12:28.348] Indentation size: 2, will insert spaces [+1:12:28.367] Active document changed to \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Public\ITcpCommunicatorListener.h [+1:12:28.368] Checking \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h for missing headers.. [+1:12:28.368] No missing headers for \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.369] Starting operation: Parse - Check [+1:12:28.371] Starting operation: Reparsing \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Public\ITcpCommunicatorListener.h [+1:12:28.374] \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h has changed since last build. Doing full analysis.. [+1:12:28.418] PSF 1 (normal preamble) does not match main file. It will be re-built [+1:12:28.418] Rebuilding PSF 1 (normal preamble).. [+1:12:28.418] Starting fpsBuildingPreamble on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.519] Completed fpsBuildingPreamble on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.519] Successfully rebuilt PSF 1 (normal preamble).. [+1:12:28.519] Saving PSF 1 (normal preamble) to C:\Users\caseltine\Documents\VisualGDB\HighFrequency90\CodeDB\HighFrequency90-Debug-Win32.0001\tmp00000004.npd.. [+1:12:28.519] Starting fpsSavingPSF on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.521] Completed fpsSavingPSF on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.521] Successfully saved PSF 1 (normal preamble).. [+1:12:28.521] Starting fpsParsingFileBody on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.829] Starting fpsAnalyzingReferencesLightweight on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.860] Completed fpsAnalyzingReferencesLightweight on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.867] Completed fpsParsingFileBody on \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.867] Starting operation: Exporting parse results [+1:12:28.867] Checking \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h for missing headers.. [+1:12:28.867] No missing headers for \\10.10.161.129\build\cfa\laser\laser\bt.communication\public\itcpcommunicatorlistener.h [+1:12:28.869] Operation completed: Exporting parse results [1 msec] [+1:12:28.869] Checked \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Public\ITcpCommunicatorListener.h: 0 error records [+1:12:28.871] Operation completed: Reparsing \\10.10.161.129\build\cfa\Laser\Laser\BT.Communication\Public\ITcpCommunicatorListener.h [500 msec] [+1:12:28.871] Operation completed: Parse - Check [502 msec] [+1:12:28.886] Starting operation: Parse - HighlightBraces [+1:12:28.886] Operation completed: Parse - HighlightBraces [0 msec]
Ophidian14ParticipantI wanted to report that I’ve been using “enable lightweight references” for awhile now and the boost to performance has been tremendous. I’m achieving previously unseen levels of productivity. The initial parse is much faster too, not just subsequent reparses. I haven’t noticed any degradation in Intellisense accuracy. Really recommend making this the default if possible.
Ophidian14ParticipantHmm. Okay, thanks for explaining that and I’m going to experiment with things on this setting and see how it goes.
Ophidian14ParticipantWhat exactly is this doing behind the scenes? Have I sacrificed speed in accuracy in any way by choosing this setting?
Ophidian14ParticipantExcellent. This brought the reparse time in this scenario down to ~1000ms, which is a huge improvement.
Ophidian14ParticipantSay I wait until the parsing is complete, and then I type one extra character which causes a syntax error (i.e. referring to a variable as “var2”, which doesn’t exist, instead of “var”). I don’t click Save or anything, just type the “2”. That line of code isn’t parsed immediately. I get this in the diagnostic output:
[+0:17:41.039] Starting operation: Parse - HighlightBraces [+0:17:41.039] Operation completed: Parse - HighlightBraces [0 msec] [+0:17:41.722] Starting operation: Parse - Check [+0:17:41.722] Starting operation: Reparsing xxxx.cpp [+0:17:41.871] Post-PSF state of is outdated. The file will be reparsed [+0:17:41.885] xxxx.cpp has changed since last build. Doing full analysis.. [+0:17:42.035] No changed PSFs found, but xxxx.cpp is outdated due to itself. Doing a quick PSF-based rebuild with 2 PSFs [+0:17:42.035] Starting fpsParsingFileBody on xxxx.cpp [+0:17:43.476] Starting fpsAnalyzingReferences on xxxx.cpp [+0:17:47.969] Completed fpsAnalyzingReferences on xxxx.cpp [+0:17:48.090] Completed fpsParsingFileBody on xxxx.cpp [+0:17:48.090] Starting operation: Exporting parse results [+0:17:48.090] Checking xxxx.cpp for missing headers.. [+0:17:48.090] No missing headers for xxxx.cpp [+0:17:48.333] Operation completed: Exporting parse results [242 msec] [+0:17:48.333] Checked xxxx.cpp: 3 error records [+0:17:48.433] Operation completed: Reparsing xxxx.cpp [6710 msec] [+0:17:48.437] Operation completed: Parse - Check [6714 msec]
The munged line is then highlighted as having an error. Is this consistent with what you’d expect?
Ophidian14ParticipantI captured a .gif of the Intellisense process (attached to this post). I’m starting from a blank environment with clean CodeDB etc. folders. In the .gif, you can see CppEngineHost64.exe in Task Manager as I double click on my source file in Solution Explorer. It opens, and then CppEngineHost64.exe immediately goes to 100% of one core (12.5%, so 12-13% in task manager…. eight logical core CPU). This continues for the ~11 seconds from my prior post (this is -with- the PCH feature), and then you can see that VS “reacts” and the syntax coloring, etc. is applied as it finishes. My point being, I don’t see any evidence here that it’s I/O bound. There are actually very few solution files in the #includes that are being loaded over the network. Any idea how I can diagnose further?
Attachments:
You must be logged in to view attached files.Ophidian14ParticipantThanks for following up. I confirmed the PCH is working with the #error test. Here’s the improvement I saw (this is after clearing out everything in .vs, CodeDB, VisualGDBCache, etc.):
[+0:23:49.120] Operation completed: Reparsing \\10.10.161.129\build\cfa\xxx\yyy\[....].cpp [14451 msec] versus [+0:25:28.180] Operation completed: Reparsing \\10.10.161.129\build\cfa\xxx\yyy\[....].cpp [11712 msec]
My machine is i7-7700HQ, 2.80GHz, 16GB RAM.
How do these times stack up? Is this inline with the team’s expectations?
Ophidian14ParticipantI see the Intellisense setting on the project properties page. But how exactly do I use it? I tried pointing it to a .h file containing some #includes but it didn’t seem to make any difference. Can you give an example of how to set it up and then how to understand if it’s working/having an effect?
Attachments:
You must be logged in to view attached files.Ophidian14ParticipantI had to reinstall VisualGDB and I don’t have this build any more. It is also gone from the download site. It says temporary builds are deleted when the functionality is moved into the release build. But the highlighting is not working again. I downloaded VisualGDB-5.3r8-trial.msi. What to do?
Ophidian14ParticipantWhat do you mean you’re starting to use VisualGDB in anger? Your anger was proceeding your initial usage or caused by it?
January 19, 2018 at 17:58 in reply to: Integrated Clang code analysis as build step possible? #13525Ophidian14ParticipantIs something preventing you from invoking clang on your own as part of your build process?
Ophidian14ParticipantThank you! It’s working. Just renewed my support license for 2018 as well.
Ophidian14ParticipantThank you!!! It’s working. Will this workaround persist into the mainline builds? 5.3r6 and beyond?
Ophidian14ParticipantSorry, I forgot to mention in my last message that I’m using another extension that highlights errant whitespace in red. However, I tried disabling it and it made no difference.
Here’s a GIF using the new build. The diagnostic window is visible in the animation.
Attachments:
You must be logged in to view attached files. -
AuthorPosts