Commit Graph

82 Commits (9fbf6f421f1113d28059b693d40a832f0576fdb7)

Author SHA1 Message Date
Nicky 9b5cc28e76 Refactor code. All nd*.cpp/h files are now in their own subdirectory. 2013-01-27 18:53:56 +01:00
Tank_Master 7d92ffc094 add detection for Windows Blue OS 2013-01-21 15:37:50 -08:00
Nicky 7748496319 Sanitize namespaces. 2013-01-05 20:25:04 +01:00
Tank_Master fd67a51a7b Merge LGPL 2013-01-03 12:07:47 -08:00
Tank_Master 1762586923 Merge LL 3.4.4 beta 1, but left tcmalloc enabled. 2012-12-21 01:14:38 -08:00
Nicky c3f84e8ef4 Add tcmalloc replacement bits into LL code. 2013-01-02 18:11:03 +01:00
Dave Parks a36b66bd14 MAINT-1815 Fix for excessive memory usage in Mayfair. Disable tcmalloc. Disable private memory pools. Make viewer large address aware on windows.
Reviewed by Kelly
2012-11-07 16:03:54 -06:00
Vadim ProductEngine a47e9bd97b EXP-1525 FIXED Potential fix for a crash at shutdown: added some error handling to saving inventory cache. 2012-01-10 16:35:36 +02:00
Oz Linden ac94b66a08 storm-1729: ensure that cpu id has no leading or trailing spaces for ease of comparison and formatting 2011-12-13 15:58:34 -05:00
Nicky 1714747536 After merge compare FS tree agsindt V/dev.
- Adjust whitespaces/include order to make FS source look as close to V/dev as possible.
- Include source in V/dev that's not in FS and comment it out with an annotation.
2012-01-18 19:04:59 +01:00
Nicky 6ef7838cd2 Merge up to 25972:7fceba778ee6 (V/Dev) 2012-01-17 21:15:06 +01:00
Nicky 161c1b019f Merge up from 24496 / a656486925e8 (FS tip) to 25952 / 931cb0061118 (V/Dev FUI tip)
Observations and broken stuff so far:
- LLSideTray is gone.
- LLBottomTray is gone.
- LLFloaterSnapshot was changed and gave lots of merge conflicts. Flickr upload will be broken.
- LLNearbyChat is derived from LLPanel now. That broke quite some stuff rearding autohiding and docking of chatbar.
- Profile floaters are gone and all web based now.
- Russian translation gave huge mere conflicts with the new russian xml files from LL. Unmergeable. I took the LL files.
- XUI files in general will need some love and testing.
2012-01-17 17:57:52 +01:00
Richard Linden b215c724c1 Automated merge with http://hg.secondlife.com/viewer-development 2011-08-11 10:11:59 -07:00
Leslie Linden d712dde69e SH-2218 FIX -- v2.8.x Viewers crash consistently when I actively use other applications
* Mac memory stats now extracted from proper system calls.

Reviewed by Nat Linden.
2011-08-05 11:05:48 -07:00
Leslie Linden 017a23aaf4 SH-2218 WORK AROUND -- v2.8.x Viewers crash consistently when I actively use other applications
* Just removed mac memory stats to make a low-risk work-around.
2011-08-03 17:07:49 -07:00
Nat Goodspeed ed648b1f08 CHOP-753: Eliminate redundant array-of-pair-arrays in LLMemoryInfo.
(per Monty code review)
The notion of storing LLMemoryInfo data both as an LLSD::Map and an
LLSD::Array of pair arrays arose from a (possibly misguided) desire to
continue producing stats output into the viewer log in the same order it
always used to be produced. There is no evidence that anyone cares about the
order of those stats in the log; there is no other use case for preserving
order. At Monty's recommendation, eliminate generating and storing the
array-of-pair-arrays form: directly store LLSD::Map.
2011-07-12 20:14:39 -04:00
Nat Goodspeed e58a0e9b26 CHOP-753: Defend against boost::regex exceptions.
(per Monty code review)
Explain why we intentionally don't suppress exceptions from boost::regex
objects constructed with string literals. Catch std::runtime_error from
boost::regex_search() and boost::regex_match(); log and return false.
2011-07-12 14:34:31 -04:00
Nat Goodspeed 4e23550363 CHOP-753: make getAvailableMemoryKB() only load data on Windows.
(per Monty code review)
Other platforms return -1 anyway, so don't need to call load methods.
2011-07-12 13:34:09 -04:00
Nat Goodspeed 8fcda650a7 CHOP-753: Add classic-C-style diagnostics around popen("vm_stat").
On Mac, where LLMemoryInfo relies on a child process rather than any sort of
internal system API, try to produce more informative LL_WARNS output if
popen() fails to run vm_stat, or if vm_stat terminates with nonzero rc.
2011-07-11 14:24:28 -04:00
Nat Goodspeed 607f60d6f6 CHOP-753: Add timestamp to LLMemoryInfo's LLSD stats block.
For postprocessing these stats, we'll want the time at which they were
captured. We'll want the current framerate too, but handle that at a higher
level.
2011-07-11 10:57:14 -04:00
Nat Goodspeed 774306bc25 CHOP-753: have to cast pointer passed to GetProcessMemoryInfo().
GetProcessMemoryInfo() is prototyped with PROCESS_MEMORY_COUNTERS*, so to
accept PROCESS_MEMORY_COUNTERS_EX* as documented, have to cast.
2011-07-07 14:47:20 -04:00
Nat Goodspeed 65657b9f5c CHOP-753: uh, Microsoft docs lied about header file to use?
Remove <kfuncs.h>, documented header file for GetCurrentProcess().
2011-07-07 14:20:37 -04:00
Nat Goodspeed 6c0d6956da CHOP-753: add stats from GetProcessMemoryInfo() on Windows.
Introduce StatsArray helper class to facilitate accumulating stats in the
array-of-pair-arrays form cached internally by LLMemoryInfo.
2011-07-07 14:05:56 -04:00
Nat Goodspeed bfbd7c6df5 CHOP-753: On Windows, add GetPerformanceInfo to LLMemoryInfo stats.
So far we've only been querying GlobalMemoryStatusEx(), but
GetPerformanceInfo() delivers a bunch more memory-related stats that may be
pertinent. Try capturing those too. May not yet compile on Windows...
2011-07-05 20:20:26 -04:00
Nat Goodspeed abf50e8c7d CHOP-753: Fix compile errors in LLMemoryInfo Windows-specific code. 2011-06-30 13:57:11 -04:00
Nat Goodspeed 01607fe418 CHOP-753: Reduce redundancy in LLMemoryInfo.
Recast stream() to display data from LLSD array rather than reinvoking OS
operations used to capture it.
Make refresh() cache LLSD data in map form as well as array; fetch items from
that in a few places to avoid going back to OS.
2011-06-30 11:50:54 -04:00
Nat Goodspeed b75eedb0dc CHOP-753: Fix errors in LLMemoryInfo Mac-specific code.
Handle conversion errors (boost::bad_lexical_cast).
Glean additional LLSD statistics from vm_stat output.
2011-06-30 10:12:45 -04:00
Nat Goodspeed 21ff3d0d1c CHOP-753: fix minor compilation errors on Linux 2011-06-29 20:42:30 -04:00
Nat Goodspeed 7f8ec9f142 CHOP-753: Introduce LLSD access to LLMemoryInfo ** BROKEN **
This is known not to compile on Mac yet; checking in to concurrently work on
Linux-specific code.
2011-06-29 20:35:44 -04:00
Nat Goodspeed 1262f710b5 CHOP-753: Report Linux memory stats 1/line, like other platforms.
Previous code deliberately flowed the different lines from MEMINFO_FILE
together on a single line, which seems pointless to me, since we want to be
able to grep the viewer log to recognize individual stats.
Also replace classic-C LLFILE* machinery used to read MEMINFO_FILE with
std::ifstream and std::getline().
2011-06-28 23:09:00 -04:00
Nat Goodspeed 26be53aede CHOP-753: Introduce a sliding window of framerate samples.
The trouble with remembering the slowest-ever framerate is that framerate
drops dramatically on login, then typically bounces back to something
reasonable during the session. So the session-normal framerate has to drop
pretty dramatically before it falls below the original login framerate. To
address this, only remember the last ~10 minutes of framerates, and log memory
stats every time a new framerate is slower than the previous 10 minutes.
2011-06-28 16:01:16 -04:00
Nat Goodspeed 57c230b73e CHOP-753: suppress VS fatal warning 4355 2011-06-28 08:58:10 -04:00
Nat Goodspeed abb8a7018d CHOP-753: Log LLMemoryInfo whenever framerate hits a new low.
Introduce FrameWatcher, a static object that hooks into the LLEventPump named
"mainloop" to get a call every frame. Track framerate over a defined sample
time (20 seconds atm); track minimum and log LLMemoryInfo every time we hit a
new minimum.
2011-06-28 08:21:49 -04:00
Nat Goodspeed 2619f3db1f CHOP-753: add timestamp and <mem> marker to memory stats log lines 2011-06-24 10:46:38 -04:00
Nat Goodspeed 0ec4d813eb Log enriched memory info for Mac too.
Add Mac logic to LLMemoryInfo::stream(): run vm_stat and log its output.
Add comments with Mac and Linux suggestions to
LLMemoryInfo::getAvailableMemoryKB(), responding to comment:
//do not know how to collect available memory info for other systems.
2011-06-23 14:50:28 -04:00
Tank_Master 5b4dcf003e Correctly identify Server 2008, Server 2008 R2, Server 2012, and Windows 8 2011-05-16 23:58:28 -07:00
Leslie Linden a34cad5f2a EXP-779 FIX -- Help > About Second Life Reports Kernel Version Twice, Instead of OS Version
Modified Mac OS_VERSION string to include OS X version number in addition to Kernel version info.
DARWIN llcommon build now depends on Carbon in order to provide this functionality.

Reviewed by Richard.
2011-05-04 16:13:26 -07:00
Arrehn 7394730eaa Merge up to LL FUI 2011-10-28 02:00:09 -04:00
Tank_Master 09fb581cec reimplment workaround for XP always showing as compatibility mode in help -> about 2011-09-05 12:37:43 -07:00
Arrehn 73e06cba36 Mac memory stat reporting, from SH-2218 FIX, Lesie Linden 2011-08-28 10:16:27 -04:00
Arrehn 9fd0edb326 Initial 2.8.3+ merge, Tozh & Arrehn
Issues: Graphics preferences tab, lighting, depth of field
Issues: Color preferences tab, new direct chat
Issues: Build floater Mesh build tab
Issues: German translations of build, viewer menus
Issues: pipeline issues with mac, possibly other things
Issues: uploading content / temp content
Issues: Windlight quickprefs, parcel windlight, RLVa windlight
2011-08-26 11:18:49 -04:00
Arrehn e277b8a4ac Merge with LL 2.6.9, initial work. Needs tests, extra XUI merging with particular skins. 2011-08-04 11:53:40 -04:00
Tank_Master 45a70f4033 corrected help -> about showing XP always as running in compatibilty mode 2011-04-07 16:16:23 -07:00
Tank_Master 27fdbaf30f correctly identify server 2008 and 2008 R2, added win8 and serv 2012 2011-04-07 14:58:47 -07:00
Xiaohong Bao 219cd6ecda more debug code for SH-207: viewer crash in LLVertexBuffer::mapBuffer. 2010-10-14 21:23:23 -06:00
Xiaohong Bao 5ee546eb4e for SH-335: create a debug tool to track of memory availability. 2010-10-14 17:01:39 -06:00
Oz Linden 06b0d72efa Change license from GPL to LGPL (version 2.1) 2010-08-13 07:24:57 -04:00
palange@pdp47.lindenlab.com 71f3913679 EXT-3780 FIX Fixed CPU MHz to be MHz on all platforms. 2010-06-02 15:24:59 -07:00
Mark Palange (Mani) 0db04cbb67 EXT-3780 WIP Adding newline to linux getCPUFeatureDesc output 2010-05-11 16:27:50 -07:00
Mark Palange (Mani) 1aef4820a5 EXT-3780 Added linux impl - wip 2010-05-03 17:06:14 -07:00