site_archiver@lists.apple.com Delivered-To: darwin-dev@lists.apple.com From: Marc Van Olmen <marc@sky4studios.be> Date: September 2, 2005 8:37:31 AM EDT To: darwin-dev@lists.apple.com Subject: mySQL benchmark on OS X and Linux (same 2.5ghz G5 hardware) hi, Interesting findings: <http://www.anandtech.com/mac/showdoc.aspx?i=2520> Best wishes.... On Oct 9, 2005, at 11:04 AM, Shaun Wexler wrote: This email sent to aguilarojo@verizon.net _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/site_archiver%40lists.appl... I am not sure my method of approach is Apple approved as far as determining whether local host hardware is portable. But it would seem to me that as there will be a diversity of systems which will be Intel and PowerPC for years into the future both running OS X and being used in a variety of ways the problem of identity and determining how a program utility or other application is to interact with them upon that discovery is a rather interesting problem. I'm not sure if it's an Apple's interest to be actually helpful in providing a solution to this, but my own solution and guess goes along the lines I describe. IT may become useful to identify such computers if only to maximize the tasks assigned or expected given the CPU's or other identified components a system may have. I am doubtful that all the potential of the PowerPC has been exploited or that the benefits of Intel's technology are all that compelling. Even so an application to distinguish and identify them for maximum effectiveness of getting work done utilizing their known strengths from the point of view of the task itself is a "good" problem. There is another question of whether OS X is the best OS to use (if the problem is complex enough); one may really need to consider Yellow Dog Linux. If one is using Yellow Dog Linux, at least, an object can be developed to export instructions for Intel if necessary. One's options remain open and flexible. However, if one utilizes OS X the current tools are all being maximized to convert to Intel; developing something for the PowerPC could be a dilemma. If the task is complex enough one may have to consider that as a server OS X is very much slower than Linux. Yellow Dog Linux may be the best OS to use to preserve functionality across the different architectures if the task of the computer AS A SERVER is important. Also C++ under YDL doesn't have the bottlenecks as it would under OS X. An independent analysis studying OS X in comparison to Yellow Dog Linux was posted to this list sometime ago and may be of interest: mvo My answer really depends if my understanding of what you are attempting is accurate. First the issue is what programming language to use. I'm partial to C++ because objects are easy to develop and update regarding what your tasks are. Also objects, if their relationships are correctly designed, can actually identify distinctions faster than non-object oriented languages and determine appropriate choices based on defined relationships and decision trees and thereby approach elements of intelligent behavior expected from systems comprising Artificial Intelligence methodologies. For instance an object capable of capturing select data fields similar to which the Apple Utility System Profile collects, could be constructed. System Profile for example collects specific information within the Machine Model, CPU Type, Number of CPUs, CPU Speed, Boot ROM version, Sudden Motion Sensor and Sudden Motion Sensor Version Fields. Building a C++ library to compare a combination of these fields would be a starting place which could identify a particular Apple laptop or other Apple computer. Of course, identifying the actual variable names used could be a bit of a research challenge, but it is not an impossible one as it is documented somewhere. The real challenge is determining what you want the object to do once it has the necessary fields. Once the data in the fields have been copied into the object then what the object does next depends on the decision tree. The object should know enough to behave differently with a Pismo, than with a MiniMac, versus an Aluminum G4, versus a Titanium G4. It would be trivial to tell an object for instance to check on available RAM, CPU Type, etc as additional information becomes necessary to do something for a certain purpose; nonobject oriented languages would have more of a problem with on the fly additions as certain changes to an overall task becomes clearer. The suggested fields could be enough for an object to identify these computers; what the object does with that assessment once made depends on the decision process desired and other actions to be engaged upon by the object as determined by you. If one has chosen to work with objects then the objects become more useful not only distinguishing which computers are present, but also what is to be done with them all or any one of them. What is the Apple-approved method for determining the portability of the local host hardware? I need to enforce certain behavior if the host is a laptop, and other behavior if the host is a tower/desktop. My first thoughts were to parse 'compatible' for "PowerMac" and "PowerBook", but I want to remain forward-compatible. Is this the correct approach? -- Shaun Wexler MacFOH http://www.macfoh.com _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-dev mailing list (Darwin-dev@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-dev/ aguilarojo%40verizon.net This email sent to site_archiver@lists.apple.com