Troubleshooting crashes: Difference between revisions

Jump to navigation Jump to search
m
→‎Crashes in general: http://forum.flightgear.org/viewtopic.php?f=37&t=22309&p=202574&hilit=amd+load#p203650
No edit summary
m (→‎Crashes in general: http://forum.flightgear.org/viewtopic.php?f=37&t=22309&p=202574&hilit=amd+load#p203650)
Line 16: Line 16:
== Crashes in general ==
== Crashes in general ==
If FlightGear crashes (or looks/performs very badly/slowly), it's possible that this is due a number of reasons, such as limited hardware resources (CPU, GPU, RAM etc) or insufficient driver support - so crashes are not necessarily due to a faulty program. FlightGear does work for hundreds of forum users, and usually without any form of sophisticated prior setup or configuration. So if something doesn't work "out of the box" it's usually some local or system-specific issue. In general, you are unlikely to encounter any major bugs when using a release - if you don't mind having to deal with bugs and technical issues, we'd like to invite you to help us test prereleases (so called "release candidates"/RCs) and nightly builds - or directly build from git.
If FlightGear crashes (or looks/performs very badly/slowly), it's possible that this is due a number of reasons, such as limited hardware resources (CPU, GPU, RAM etc) or insufficient driver support - so crashes are not necessarily due to a faulty program. FlightGear does work for hundreds of forum users, and usually without any form of sophisticated prior setup or configuration. So if something doesn't work "out of the box" it's usually some local or system-specific issue. In general, you are unlikely to encounter any major bugs when using a release - if you don't mind having to deal with bugs and technical issues, we'd like to invite you to help us test prereleases (so called "release candidates"/RCs) and nightly builds - or directly build from git.
== Performance Issues ==
If working through this article doesn't solve problem, you are probably facing a hardware/driver issue, which means that you may need to upgrade (or even downgrade) your drivers, and/or disable some settings on the driver side of things.
If however, the "minimal startup profile" stops the error from occurring, that would suggest that FG is using some "code paths" that are not supported by your current driver - this isn't all that uncommon, we have an increasing number of GLSL shaders, while most of the existing FG code was really only written with a fixed rendering pipeline in mind - and in fact, much of it even predates the OSG port, such as for example the GUI (PLIB/PUI).
It isn't that far-fetched to think that these factors may not be very well supported under certain circumstances. In general, nvidia drivers are often understood to be/perform better (despite being closed-source).
It would also be interesting if any "modern" OSG code exhibits similar problems or not, to check that use any of the Canvas-based GUI dialogs/instruments for example, and please report back here.
In summary, our way of using OSG is not particularly optimized, and we're doing a lot of things that are known to be inefficient, such as having lots of GL state changes, and using legacy GL code in conjunction with more modern code - all of these things are having performance penalties, and they also affect compatibility - especially because GLSL, unlike DirectX shader code, is not bytecode, but compiled on-the-fly by your driver - in other words, each GPU vendor will typically have their own GLSL compiler implementation, and these are known to be fragile under certain circumstances - as an open source project, we do not have the resources to literally test each new -or modified- shader on all major hardware platforms - so we really rely on end-user feedback, but also on end-users being able -and willing to- read up on troubleshooting such issues, to provide better/more informed feedback, e.g. by using tools like gDebugger or the corresponding ATI/AMD and nvidia equivalents.
Writing portable cross-platform code is tricky in and of itself, but that problem is already solved by FlightGear - however, supporting different GPU vendors and makes is basically an identical challenge these days, because hardware, drivers and GLSL compilers differ hugely when it comes to quality and performance.


== Possible causes ==
== Possible causes ==

Navigation menu