6
I Use This!
Inactive

News

Analyzed 1 day ago. based on code collected 3 days ago.
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "add property for performance counters" The build process requires a number of build time parameters that specify the features and ... [More] components for a Jikes RVM build. Typically the build parameters are defined within a property file located in the build/configs directory. The following table defines the parameters for the build configuration.PropertyDescriptionDefaultconfig.nameA unique name that identifies the set of build parameters.Noneconfig.bootimage.compilerParameter selects the compiler used when creating the bootimage. Must be either opt or base.baseconfig.bootimage.compiler.argsParameter specifies any extra args that are passed to the bootimage compiler.""config.runtime.compilerParameter selects the compiler used at runtime. Must be either opt or base.baseconfig.include.aosInclude the adaptive system if set to true. Parameter will be ignored if config.runtime.compiler is not opt.falseconfig.mmtk.planThe name of the GC plan to use for the build. See MMTk for more details.Noneconfig.default-heapsize.initialParameter specifying the default initial heap size in MB.20config.default-heapsize.maximumParameter specifying the default maximum heap size in MB.100config.assertionsParameter specifies the level of assertions in the code base. Must be one of extreme, normal or none.normalconfig.stress-gc-intervalThe build will stress test the gc subsytem if set to a positive value. The value indicates the number of allocations between collections0config.include.perfeventSet to true to build Jikes RVM with support for performance counters.falseconfig.include.gcspySet to true to build Jikes RVM with GCSpy support. See Using GCSpy for more details.falseconfig.include.gcspy-clientSet to true to bundle the GCSpy client with the Jikes RVM build. Parameter will be ignored if config.include.gcspy is not true.falseconfig.include.gcspy-stubSet to true to use the GCSpy stub rather than the real GCSpy component. Parameter will be ignored if config.include.gcspy is not true.falseconfig.include.all-classesInclude all the Jikes RVM classes in the bootimage if set to true.falseJikes RVM ConfigurationsA typical user will use one of the existing build configurations and thus the build system only requires that the user specify the config.name property. The name should match one of the files located in the build/configs/ directory minus the '.properties' extension.Logical ConfigurationsThere are many possible Jikes RVM configurations. Therefore, we define four "logical" configurations that are most suitable for casual or novice users of the system. The four configurations are:prototype: A simple, fast to build, but low performance configuration of Jikes RVM. This configuration does not include the optimizing compiler or adaptive system. Most useful for rapid prototyping of the core virtual machine.prototype-opt: A simple, fast to build, but low performance configuration of Jikes RVM. Unlike prototype, this configuration does include the optimizing compiler and adaptive system. Most useful for rapid prototyping of the core virtual machine, adaptive system, and optimizing compiler.development: A fully functional configuration of Jikes RVM with reasonable performance that includes the adaptive system and optimizing compiler. This configuration takes longer to build than the two prototype configurations.production: The same as the development configuration, except all assertions are disabled. This is the highest performance configuration of Jikes RVM and is the one to use for benchmarking and performance analysis. Build times are similar to the development configuration.The mapping of logical to actual configurations may vary from release to release. In particular, it is expected that the choice of garbage collector for these logical configurations may be different as MMTk evolves.Configurations in DepthMost standard Jikes RVM configuration files loosely follow the following naming scheme:<boot image compiler> Base"|"Adaptive" <garbage collector> wherethe <boot image compiler> is the compiler used to compile Jikes RVM's boot image.Base"|"Adaptive" denotes whether or not the adaptive system and optimizing compiler are included in the build.the garbage collector is the garbage collection scheme used.The following garbage collection suffixes are available:"NoGC" no garbage collection is performed."SemiSpace" a copying semi-space collector."MarkSweep" a mark-and-sweep (non copying) collector"GenCopy" a classic copying generational collector with a copying higher generation"GenMS" a copying generational collector with a non-copying mark-and-sweep mature space"CopyMS" a hybrid non-generational collector with a copying space (into which all allocation goes), and a non-copying space into which survivors go."RefCount" a reference counting collector with synchronous (non-concurrent) cycle collectionFor example, to specify a Jikes RVM configuration:with a baseline-compiled boot image,that will compile classes loaded at runtime using the baseline compiler andthat uses a non-generational semi-space copying garbage collector,use the name "BaseBaseSemiSpace".Some files augment the standard configurations as follows:The word "Full" at the beginning of the configuration name identifies a configuration such that all the Jikes RVM classes are included in the boot image. (By default only a small subset of these classes are included in the boot image.)"FullAdaptive" images have all of the included classes already compiled by the optimizing compiler."FullBaseAdaptive" images have the included classes already compiled by the baseline compiler; the adaptive system will later recompile any hot methods.The word "Fast" at the beginning of the configuration name identifies a "Full" configuration where all assertion checking has been turned off. Note: "Full" and "Fast" boot images run faster but take longer to build.Prefixing the configuration with "ExtremeAssertions" indicate that the config.assertions configuration parameter is set to extreme. This turns on a number of expensive assertions.In configurations that include the adaptive system (denoted by "Adaptive" in their name), methods are initially compiled by one compiler (by default the baseline compiler) and then online profiling is used to automatically select hot methods for recompilation by the optimizing compiler at an appropriate optimization level.For example, to a build for an adaptive configuration, where the optimizing compiler is used to compile the boot image and the semi-space garbage collector is used, use the following command: % ant -Dconfig.name=OptAdaptiveSemiSpace View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "update for 2014 (see the core mailing list for discussion about GSoC 2014)" We will not apply as a mentoring organization for ... [More] Google Summer of Code in 2014.Do not let that stop you from participating in Google Summer of Code, though. There will be a lot of very interesting projects to choose from.In particular, it is likely that the GNU Classpath project will take part in GSoC 2014 under the umbrella of the GNU foundation. OpenJDK or IcedTea might also take part in GSoC 2014.Pages for past summers of code2007200820092010201120122013 View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "remove sentenceabout applying in 2014" As in previous years, Jikes RVM has applied to Google Summer of Code. We were not accepted ... [More] as mentoring organization for GSoC in 2013.Hints for studentsYou can still take part in GSoC and work for another mentoring organization. Projects closely related to Jikes RVM include those linked with GNU Classpath. Students interested in GSoC should read at least the GSoC FAQ and Google's advice for students. There's also a lot of helpful information about GSoC that's provided by mentoring organizations and previous GSoC students (use your favorite search engine to find it).Archived stuff that's no longer relevant for GSoC 2013Hints for students specific to Jikes RVMIf the Jikes RVM project sounds like it could be a good fit for you, you can already start to get familiar with Jikes RVM. Checkout the source code and read the user guide. Build the Jikes RVM, run some tests and take a look at the codebase. You should have your development environment already set up before applying. Don't hesitate to ask on the mailing lists if you need help.If/when we've been accepted as a mentoring organization, students can take a look at our guidelines on making an application. We expect that students get familiar with the Jikes RVM and the Jikes RVM community before applying.What's in it for me?All mentors get a smart Google t-shirt. The project gets some new contributors, and the students get substantial amounts of cash and experience in open source development. The Jikes RVM project has seen substantial benefits from GSoC in previous years, including a new native threading model and additions to the core team of developers.Adding new project suggestionsPlease add your ideas to the wiki below, ideally using the template shown below. You can also contribute an idea if you don't have a wiki account: just describe it on the researchers mailing list. Project TitlefooRVM area{compiler, classlib, MMTk, infrastructure...}outlineparagraph description of project ideareferenceslinks to related projects, academic papers, etcneeded skillsskills that the student should have and/or needs to acquire during the projectdifficultya difficulty estimate for the project, e.g. easy, medium, difficultinterested mentoryour name and a contact link or "TBD" if you can't mentorProject suggestions (aka ideas list) Project TitleImplement the Java Management extensions (JMX) APIRVM areaclasslib, MMTk, threading, compileroutlineThe Java Management Extensions provide a way to monitor and manage Java Virtual machines. The Jikes RVM can collect significantly more profiling data and runtime statistics than an average JVM as a result of it being focussed on research activities. These statistics would ideally be exported using JMX and could potentially provide a standard mechanism for monitoring the performance and health of the virtual machine and its components.As a first step, students should focus on laying groundwork for a suitable implementation of the API:Update the JMX code from GSoC 2007 (written by Andrew John Hughes) to work with the current Jikes RVMImplement all the parts of the API that are requiredWrite automated tests that can be integrated into our test frameworksAfter that has happened, students should implement the optional parts of the API and Jikes RVM-specific features. The exact set of features will need to be discussed with the community at the appropriate time.referencesBlog post about JMX with links to further documentationOur bugtracker entry for JMXWeb view of the JMX branch in the historic svn repository (use "svn checkout svn://svn.code.sf.net/p/jikesrvm/svn/rvmroot/branches/RVM-127-JMX" to checkout the code)needed skillsJavadifficultyeasyinterested mentorTony Hosking, Steve Blackburn  Project TitleImplement the JVM Tool Interface (JVMTI)RVM areathreading, JNIoutlineThe JVM Tool interface is part of the Java Platform Debugger Architecture that JVMs can implement to provide debugging capabilities. We would like to have a full JMVTI implementation to allow debugging of Java applications that are running on Jikes RVM. Another benefit of JVMTI is that it allows low-level access to JVM internals. This can be used for instrumenting and monitoring the Jikes RVM using low-level code.There is already a partial JMVTI implementation that was written by James Bornholt for GSoC 2011. His implementation should be used as a basis for this project.referencesWriteup of James Bornholt on the GSoC 2011 pageWeb view of previous GSoC 2011 JVMTI workneeded skillsC, C++, Java, willingness to deal with low-level detailsdifficultymediuminterested mentorEliot Moss  Project TitleImprove (or rethink) CatTrackRVM areainfrastructureoutlineThe Jikes RVM project currently uses the Ruby-on-Rails application CatTrack to track test results. CatTrack is also responsible for sending regression mails.This project would consist of upgrading CatTrack to use a more recent version of Ruby-on-Rails instead of the ancient Ruby-on-Rails 1.2.6. Potential candidates must have experience in Ruby-on-Rails to be able to take on this project: we don't have the necessary expertise to provide adequate mentoring to RoR beginners. The exact version numbers and the upgrade process need to be coordinated with our contacts at the Australian National University (where the servers are located). New features can be added to CatTrack after the upgrade is complete.An alternative approach would be to get rid of CatTrack completely and move to a more general open-source solution. Note that this would be a much more disruptive change. A student proposal that suggests this approach must be very convincing to be considered. Another constraint for proposals of this kind is that we want to avoid using yet another language in our build infrastructure (see RVM-85 ). It might be acceptable to replace Ruby with another language but this must be discussed before such a proposal is submitted.The X10 language project also uses CatTrack for their regression mails. Candidates should be prepared to coordinate with somebody from the X10 team to ensure that an upgraded version of CatTrack (or a replacement) is also a viable solution for them.referencesWeb view of the CatTrack repositoryneeded skillsprior Ruby-on-Rails experience, XML, basic knowledge about databasesdifficultydifficultinterested mentorSteve Blackburn  Project TitleImprove testing situation for JIkes RVMRVM areainfrastructure, (additional subsystems as chosen by the student)outlineAn infrastructure for unit tests and some initial unit tests were added to the Jikes RVM in GSoC 2012 by João Reys Santos. However, there is still a lot of work to do before we can consider the codebase to be reasonably well tested. We need more unit tests as well as more black-box tests.Students should pick an area of interest (e.g. compilers, JNI, MMTk, classloading, threading, ...) and/or motivating use cases (e.g. get benchmark X or application Y running on Jikes RVM), identify and fix the corresponding problems and introduce adequate (unit) tests.Note that extra effort will be required if students want to use mocking. Mockito does not work with GNU Classpath-based JVMs and our OpenJDK-port is not yet ready.referencesbook: Michael Feathers, Working effectively with legacy code, Pearson Education, 2004book: Andreas Zeller, Why programs fail: A guide to systematic debugging, Morgan Kaufmann, 2009needed skillsJava, Ant, debugging without a debuggerdifficultyeasy to difficult (depends on the chosen tasks and areas)interested mentorTony Hosking  Project TitleBytecode verifierRVM areaclassloading, compilersoutlineJikes RVM currently does not implement a bytecode verifier. We would like to have a bytecode verifier that can verify classfiles at least up until Java 6 (we don't support Java 7 yet). The verifier needs to work with the baseline compiler as well as the optimizing compiler. Ideally, it should be possible to use the verifier from the command line without actually running the bytecode that is supposed to be checked. This could be done in a similar way to the OptTestHarness which enables users to control the compilers.The verifier should be designed to support custom verification constraints. Some examples for possible constraints are listed in the JIRA issue linked below.referencesJIRA issue for the bytecode verifierJasmin assembler (useful for creating test cases that trigger verifier errors)Chapter 4 of the JVM Specificationneeded skillsJava, reading papers and specifications, implementing algorithms from specifications and papersdifficultymediuminterested mentorEliot Moss  Project TitleGCspyRVM areaMMTkoutlineThe GCspy framework for garbage collector visualization has become out-of-date and needs improving [RVM-388]. GCSpy 2.0 should update the framework to work properly with the latest version of Jikes RVM. In particular, it should support discontiguous spaces and provide drivers for more of MMTk's GC algorithms. In addition, the rewrite might improve modularity, and possibly integrate with the Eclipse Rich Client Platform.referencesGCspy: an adaptable heap visualisation frameworkneeded skillsJava, C++, willingness to deal with low-level details, some understanding of garbage collectiondifficultyfairly straightforwardinterested mentorRichard Jones  Project TitleImplement the Compressor garbage collectorRVM areaMMTkoutlineA Stop-The-World variant of the Compressor garbage collector was implemented for Jikes RVM in  GSoC 2010 by Michael Gendelman. The goal of this project is to improve the stability of Michael Gendelman's implementation so that it can be merged to mainline. Performance tuning may also be needed.Students that are interested in this project should be familiar with garbage collection and MMTk.Hint for very ambitious students: You can work on more complex variants of the Compressor (e.g. a concurrent version) once the the Stop-The-World variant has been merged and the project has determined that its quality is suitable.referencespaper: Haim Kermanya and Erez Petrank, The Compressor: concurrent, incremental, and parallel compaction (ACM link)JIRA issue for the compressor (includes a link to the paper)Michael Gendelman's work on the Compressor (includes a design document on the wiki)needed skillsJava, willingness to deal with low-level details, familiarity with garbage collectiondifficultydifficultinterested mentorRichard Jones or Steve Blackburn  Project TitlePort Jikes RVM compilers to ARMRVM areacompilersoutlineJikes RVM currently supports 32-bit Intel, and 32- and 64-bit Power PC architectures. This project involves porting Jikes RVM (initially the baseline compiler) to the 32-bit ARM architecture. Ambitious students could consider the optimizing compiler too, as a second step. Lots of preparatory work has been done in this area. I had an undergraduate student project at Glasgow University this year. He has done excellent refactoring work and we should be able to build on this to get a fully functional baseline compiler.referencesWhen my student's project is marked, I will put a PDF document up here. In the mean time, here is an out of date thesis about an earlier porting effort to ARM.needed skillsJava, willingness to deal with low-level details, familiarity with ARM instruction setdifficultymoderate to difficultinterested mentorJeremy Singer, also support available from colleagues at ARM directly. Please get in touch to discuss details!  Project TitleImplement new Quick compilerRVM areacompilersoutlineA Quick Compiler that does simple optimization and some use of registers, possibly modeled after existing dynamic code generation systems such as that of QEMU or valgrind. The point of such a compiler is to exploit "low hanging fruit". Previous work (10 years ago) took a somewhat different approach, but suggested that a compiler that applied a simple approach to register allocation and some simple optimizations reduced total execution over the current Baseline or Baseline+Opt compilation systems.referencesQEMU and valgrind are good starting points for developing the compilation / optimization strategy.needed skillscompiler expertise (analyses and optimizations)difficultymoderate to difficultinterested mentorEliot Moss  Project TitleReengineer Command Line Flag parsing in Jikes RVMRVM areainfrastructureoutlineJikes RVM has lots of command-line flags, as you can see from the command line help. Researchers add new flags all the time, when they are working on experimental features. The current techniques for adding new flags, parsing flags, etc is quite complex. This project is about refactoring the code to make command line flag handling more straightforward. Possibilities (negotiable) include autocomplete for flags, suggestions for unrecognised flags, etc.referencesMaybe look at Google commandline flags library, and at bash completion for some ideas.needed skillsJavadifficultyeasy to moderateinterested mentorJeremy Singer Please get in touch to discuss details! View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "link "How To Ask Questions The Smart Way"" The main form of communication for the Jikes RVM project is through mailing lists. The ... [More] following table contains the mailing lists established for this project.List NameDescriptionSubscribeUnsubscribeArchivejikesrvm-announceLow volume list for AnnouncementsSubscribeUnsubscribeArchivejikesrvm-researchersGeneral discussion of Jikes RVM (including design, implementation, issues, and plans).Questions on this list are answered by users of Jikes RVM and core team members.SubscribeUnsubscribeArchivejikesrvm-coreDiscussion of day-to-day development and design among Jikes RVM core team membersSubscribeUnsubscribeArchivejikesrvm-commitsNotification list for changes to the Mercurial repositoriesSubscribeUnsubscribeArchivejikesrvm-regressionAutomatic mail messages and subsequent discussion of nightly regression runsSubscribeUnsubscribeArchivejikesrvm-issuesAutomatic mail messages generated by the Issue Tracking softwareSubscribeUnsubscribeArchiveGuidelinesIf you are not sure which mailing list is the right one, use jikesrvm-researchers. Do not post the same message to multiple mailing lists.Please introduce yourself when posting for the first time. You should also state your affiliation (e.g. your university) if it's not obvious from your email address.Please read How To Ask Questions The Smart Way if you are unfamiliar with interactions in open source projects.  View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "discouraged reporting bugs on core mailing list" Thank you for coming to this page. We are sorry if you are experiencing ... [More] difficulties with the Jikes RVM. While we do our best to test and debug Jikes RVM, with so much variety of hardware and configurations it may be that we've missed something. This is where you can make a contribution to Jikes RVM by just telling us what isn't working.Reporting bugs is important to us! When we know something isn't working we can look into fixing it and schedule the fix in our release road map. This is also true if you are experiencing problems with a Jikes RVM that you have modified for your own development; knowing how people modify Jikes RVM will help us to make it more flexible and robust in the future.How to report bugsThe Jikes RVM Bug Tracker is managed using a system called JIRA, which is really friendly to use. To avoid spam, JIRA does require a user account when reporting or commenting on issues. You can sign up at Xircles. Direct sign up at JIRA was disabled by the Codehaus adminstrators because the registration process was automated by spammers.You can also report your bug on the researchers mailing list. Do not report bugs on the core mailing list unless you are willing to work on a solution.If you need a way to report a bug that contains confidential information, contact the Jikes RVM team via the core mailing list for instructions.Check that your issue has not been reported yetFirst, please take some time to search or browse the list of issues to see if your problem has been reported before. If it has, you can let us know that this issue is important to you by voting to have it fixed. Moreover, you can also select to watch the issue; this way, JIRA will notify you of any updates to it.Even if your issue has been reported yet, you may be able to provide us with some further information about the circumstances causing the problem. If this is the case, please comment on the existing issue.Create a bug reportOnce you have checked that your issue has not been reported before, create a new issue by following the instructions in JIRA and completing the following checklist:Give a clear but succinct summary, as this is the title JIRA will assign to your issue.If possible, state which components of Jikes RVM exhibit the problem, e.g., if you problem is specific to one particular garbage collector or compiler.Clearly identify the environment the problem occurs in:The version of Jikes RVM which exhibits the problem (If you select the hg tip as a version, please also copy & paste the output of hg identify into the Environment field.)The build/target host (ia32-linux, x86_64-osx, etc.) and configuration (production, prototype-opt, etc.) you have used when building the RVMThe operating system/distribution and kernel version (Copy & paste the output of uname -a into the Environment field.)Describe both the problem and the circumstances under which the problem occurs.Please provide enough information that we can reproduce the error. At the very least, give the exact command line used to run the RVM. If you are running a workload which does not stem from a well-known benchmarks suite (the DaCapo benchmarks, SPECjvm, etc.), please provide us with a download URI for your workload, so that we can run it ourselves.Also, please note that the code of Jikes RVM uses assertions extensively. If your problem shows up in one of the production configurations, for testing purposes configure the RVM such that assertions are enabled (development rather than production). Often, a failed assertion provides a good indication of what went wrong, so please include the stack trace from the failed assertion in your bug report.NB. This page is the landing pad for when an abnormal condition has terminated Jikes RVM. View Online · View Changes Online [Less]
Posted over 10 years ago by David Grove
Page edited by David Grove Every night regression testing occurs for several different configurations across several different platforms. The results are uploaded to ... [More] CatTrack and a report is mailed out to the regression mailing list. Look here if you are looking for how to run our automated tests.CatTrackCatTrack is a web application designed to track results of the tests over time. All the results are kept at;http://jikesrvm.anu.edu.au/cattrackIf CatTrack is done, core team members can attempt to bring it back up by doing the following: ssh [email protected] './stop.sh ; ./start.sh' Core Developer InformationCore developers may have access to a number of regression test machines provided by Australia National University. These can be used to test changes prior to committing them to the main source tree. The easiest way to test the changes is to rsyncthe source tree across. Given that most of the core developers will share a test account on these machines it is required that you rsynch the source tree into a subdirectory of the regression machines. rsync -azvLe ssh --delete --exclude '.svn' --exclude 'rvmroot/target' --exclude 'rvmroot/components' --exclude 'rvmroot/dist' $localrvmroot $machine:$remotervmroot where:localrvmroot is the directory of your local worldmachine is the ssh style machine description (eg. [email protected])remotervmroot is the directory on the test machine (eg. /home/test/irogers/rvmroot)this example shows putting your local machine as the source. You can reverse the source and target to perform the copy the other way around.Current List of Regression MachinesTo see what each machine is currently running, see the regression machine crontabsNote: The table below is outdated. If you need access to a PowerPC machine for development (as opposed to regular regression testing), you can try to ask for an account at the GCC Compile Farm.Machine NameRoleLocationOSArchitectureHardware detailsjikesrvmcatrackANULinuxx86P4jalapenoregressionANULinuxx86_64Core 2 QuadhabeneroregressionANULinuxx86_64Core 2 DuocayenneregressionANULinuxx86P4-DkumatakaregressionANULinuxx86P4-DpaprikaregressionANUOS Xx86Core 2 Duorvmppclnx64regressionANULinuxppcPower5pianoregressionWatsonLinuxppcJS21 (PPC970) 4 corespiccoloregressionWatsonAIXppcJS21 (PPC970) 4 cores View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "updated section about JIRA signup because it seems that signup at JIRA won't be possible for the foreseeable future" Thank you ... [More] for coming to this page. We are sorry if you are experiencing difficulties with the Jikes RVM. While we do our best to test and debug Jikes RVM, with so much variety of hardware and configurations it may be that we've missed something. This is where you can make a contribution to Jikes RVM by just telling us what isn't working.Reporting bugs is important to us! When we know something isn't working we can look into fixing it and schedule the fix in our release road map. This is also true if you are experiencing problems with a Jikes RVM that you have modified for your own development; knowing how people modify Jikes RVM will help us to make it more flexible and robust in the future.How to report bugsThe Jikes RVM Bug Tracker is managed using a system called JIRA, which is really friendly to use. To avoid spam, JIRA does require a user account when reporting or commenting on issues. You can sign up at Xircles. Direct sign up at JIRA was disabled by the Codehaus adminstrators because the registration process was automated by spammers.You can also report your bug on the researchers mailing list. If you need a way to report a bug that contains confidential information, contact the Jikes RVM team via the core mailing list for instructions.Check that your issue has not been reported yetFirst, please take some time to search or browse the list of issues to see if your problem has been reported before. If it has, you can let us know that this issue is important to you by voting to have it fixed. Moreover, you can also select to watch the issue; this way, JIRA will notify you of any updates to it.Even if your issue has been reported yet, you may be able to provide us with some further information about the circumstances causing the problem. If this is the case, please comment on the existing issue.Create a bug reportOnce you have checked that your issue has not been reported before, create a new issue by following the instructions in JIRA and completing the following checklist:Give a clear but succinct summary, as this is the title JIRA will assign to your issue.If possible, state which components of Jikes RVM exhibit the problem, e.g., if you problem is specific to one particular garbage collector or compiler.Clearly identify the environment the problem occurs in:The version of Jikes RVM which exhibits the problem (If you select the hg tip as a version, please also copy & paste the output of hg identify into the Environment field.)The build/target host (ia32-linux, x86_64-osx, etc.) and configuration (production, prototype-opt, etc.) you have used when building the RVMThe operating system/distribution and kernel version (Copy & paste the output of uname -a into the Environment field.)Describe both the problem and the circumstances under which the problem occurs.Please provide enough information that we can reproduce the error. At the very least, give the exact command line used to run the RVM. If you are running a workload which does not stem from a well-known benchmarks suite (the DaCapo benchmarks, SPECjvm, etc.), please provide us with a download URI for your workload, so that we can run it ourselves.Also, please note that the code of Jikes RVM uses assertions extensively. If your problem shows up in one of the production configurations, for testing purposes configure the RVM such that assertions are enabled (development rather than production). Often, a failed assertion provides a good indication of what went wrong, so please include the stack trace from the failed assertion in your bug report.NB. This page is the landing pad for when an abnormal condition has terminated Jikes RVM. View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "fix typo in guidelines" The main form of communication for the Jikes RVM project is through mailing lists. The following table ... [More] contains the mailing lists established for this project.List NameDescriptionSubscribeUnsubscribeArchivejikesrvm-announceLow volume list for AnnouncementsSubscribeUnsubscribeArchivejikesrvm-researchersGeneral discussion of Jikes RVM (including design, implementation, issues, and plans).Questions on this list are answered by users of Jikes RVM and core team members.SubscribeUnsubscribeArchivejikesrvm-coreDiscussion of day-to-day development and design among Jikes RVM core team membersSubscribeUnsubscribeArchivejikesrvm-commitsNotification list for changes to the Mercurial repositoriesSubscribeUnsubscribeArchivejikesrvm-regressionAutomatic mail messages and subsequent discussion of nightly regression runsSubscribeUnsubscribeArchivejikesrvm-issuesAutomatic mail messages generated by the Issue Tracking softwareSubscribeUnsubscribeArchiveGuidelinesIf you are not sure which mailing list is the right one, use jikesrvm-researchers.Please introduce yourself when posting for the first time. You should also state your affiliation (e.g. your university) if it's not obvious from your email address.If you are new to the Jikes RVM and have a question about modifying the Jikes RVM, please tell us what you want to do (i.e. your goal) before stating your concrete problem. This will give the list members enough context to suggest different approaches.  View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "added latest changes from RVM-1043 " Almost all of the changes in MRP are potentially useful for Jikes RVM. This page lists the ... [More] merge status for the changesets in MRP.Commit ids refer to the codehaus MRP repository and not to the one at Google Code (the commit ids are different!).The first MRP-specific commit is 870e57d18ce7c99e8d8c00b5e0adfe7b2f953280 (Set up trunk directory) from Mon, 1 Jun 2009 16:00:10 +0200.Completely merged Changesets (ordered from earliest to latest MRP commit)MRP CommitNotesJikes RVM commitscaa5090e4387f4df056a51194975a78c01cbdcbfUse SIZE_OF_POINTER in libvm.c0cf9dbf84e254b2f01f013b233008caea392f507882a2e7d6ba450262e46ee2119be1e934aa3f0f7MRP-1 / RVM-826 - was merged from MRP without attribution in the commit message3624be6f51983f3f385c8031015c548c1cef006af04f14178f9a5114dd61f505af0d8addf8b2a7b4lcmp tests.018fa1e241338ef29b55ae4eac9ad1470d25d8e98ce02705d334b17db45040b65a53de1d800fc9b6x64 fixes for MultianewArrayhelper659c74ed89b3a513dfbd0b78b0794660c2fc449f94c7f2a2e23f2ad46154b9e59f2c49d003c68c2066a49cd15abaec776c56855262acf3bed845e652RVM-584 (Automation for gathering compiler DNA). The changes to CompilerDNA.javawere not merged because they do not apply to the Jikes RVM.a987aeb1642fdd74316ad41043b15c8be2f305ec/Changesets that are only partially merged and still in progress (unordered)MRP CommitNotesJikes RVM commitsd38420e7fea6aac84f7300d6f089f3292be3adf1All x64 changes were merged. Additional fixes by Da Feng are also contained in the commit.The OProfile changes have not been merged.a4764e3f72b11246980bdf74045d8d8aec6156fe (OutOfLineMachineCode, ThreadLocalState)08b031163d63875a14ca8e7f29883284451d0cb8x64a7626555f445453afef1e6287ea155f5b7ecc6f3, d5546992fb33412aa55116549daf42a2ccfc299dbe94f3408ac0f07b396f9f040f51f4576085ccd2x6444411cd32a01fd0f8caa911ebcb5fd3cc28b9887 (StackManager)08b031163d63875a14ca8e7f29883284451d0cb8x6444411cd32a01fd0f8caa911ebcb5fd3cc28b9887 (StackManager)5ff473b86fd7f4144cabd757d3c046ce3f45e42ex64, bootimageRunner printout cleanup, remove APR0cf9dbf84e254b2f01f013b233008caea392f507 (libvm.c SIZE_OF_POINTER changes)dce47314b403ce7c095ec1625b8a5b2492c207b4x64. Used Da Feng's fix for the IR changes; rest still unprocessed.ecc7562406fd38bce74c5874999a24a861b163b0 (Da Feng's fix)33f0837b0caa4dc280d956d0721e1bf19e108745MRP-236ea4feda95a52059d46a12be721047bf6a95be09 (replacement of "new AddressConstant(..)" with "IRTools.AC(..)")Changesets that will not be merged (ordered from earliest to latest MRP commit)MRP CommitReasoning870e57d18ce7c99e8d8c00b5e0adfe7b2f953280not useful: was reverted in 61c36f01e1009f7d2a5e8b0f5e41a68fcb6abea061c36f01e1009f7d2a5e8b0f5e41a68fcb6abea0not useful: reverts 870e57d18ce7c99e8d8c00b5e0adfe7b2f953280Unprocessed ChangesetsEverything else has either not been merged yet or nobody has filled out the tables above. View Online · View Changes Online [Less]
Posted over 10 years ago by Erik Brangs
Page edited by Erik Brangs - "add more commits" Almost all of the changes in MRP are potentially useful for Jikes RVM. This page lists the merge status for the ... [More] changesets in MRP.Commit ids refer to the codehaus MRP repository and not to the one at Google Code (the commit ids are different!).The first MRP-specific commit is 870e57d18ce7c99e8d8c00b5e0adfe7b2f953280 (Set up trunk directory) from Mon, 1 Jun 2009 16:00:10 +0200.Completely merged Changesets (ordered from earliest to latest MRP commit)MRP CommitNotesJikes RVM commitscaa5090e4387f4df056a51194975a78c01cbdcbfUse SIZE_OF_POINTER in libvm.c0cf9dbf84e254b2f01f013b233008caea392f507882a2e7d6ba450262e46ee2119be1e934aa3f0f7MRP-1 / RVM-826 - was merged from MRP without attribution in the commit message3624be6f51983f3f385c8031015c548c1cef006af04f14178f9a5114dd61f505af0d8addf8b2a7b4lcmp tests.018fa1e241338ef29b55ae4eac9ad1470d25d8e98ce02705d334b17db45040b65a53de1d800fc9b6x64 fixes for MultianewArrayhelper659c74ed89b3a513dfbd0b78b0794660c2fc449fChangesets that are only partially merged and still in progress (unordered)MRP CommitNotesJikes RVM commits08b031163d63875a14ca8e7f29883284451d0cb8x64a7626555f445453afef1e6287ea155f5b7ecc6f3, d5546992fb33412aa55116549daf42a2ccfc299dbe94f3408ac0f07b396f9f040f51f4576085ccd2x6444411cd32a01fd0f8caa911ebcb5fd3cc28b9887 (StackManager)08b031163d63875a14ca8e7f29883284451d0cb8x6444411cd32a01fd0f8caa911ebcb5fd3cc28b9887 (StackManager)5ff473b86fd7f4144cabd757d3c046ce3f45e42ex64, bootimageRunner printout cleanup, remove APR0cf9dbf84e254b2f01f013b233008caea392f507 (libvm.c SIZE_OF_POINTER changes)dce47314b403ce7c095ec1625b8a5b2492c207b4x64. Used Da Feng's fix for the IR changes; rest still unprocessed.ecc7562406fd38bce74c5874999a24a861b163b0 (Da Feng's fix)33f0837b0caa4dc280d956d0721e1bf19e108745MRP-236ea4feda95a52059d46a12be721047bf6a95be09 (replacement of "new AddressConstant(..)" with "IRTools.AC(..)")Changesets that will not be merged (ordered from earliest to latest MRP commit)MRP CommitReasoning870e57d18ce7c99e8d8c00b5e0adfe7b2f953280not useful: was reverted in 61c36f01e1009f7d2a5e8b0f5e41a68fcb6abea061c36f01e1009f7d2a5e8b0f5e41a68fcb6abea0not useful: reverts 870e57d18ce7c99e8d8c00b5e0adfe7b2f953280Unprocessed ChangesetsEverything else has either not been merged yet or nobody has filled out the tables above. View Online · View Changes Online [Less]