From jvanek at openjdk.org Mon Mar 3 08:27:04 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 3 Mar 2025 08:27:04 GMT Subject: RFR: 7903889: jcstress: document used properites (and env variables) [v5] In-Reply-To: References: <_id_iOGQYGai8cFr-oaXer0R8UivNlj7-ZavmtRzetU=.1c07c8af-058d-4a9e-b83b-3a23bfb68776@github.com> Message-ID: On Sat, 25 Jan 2025 12:27:14 GMT, Ji?? Van?k wrote: >> The purpose of this PR is to move properties and properties based initializations to single place, and to document them, and to enable printing the listing with the documentation via help. >> >> No Env. vars were found. >> >> The verbose help can be removed, the individual properties with defaults are wrapped to its class. The OptionSpec and OptionFormatter can be used if needed > > Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: > > Moved declaration of individual proeprties to ceparate classes by family More is coming! ------------- PR Comment: https://git.openjdk.org/jcstress/pull/156#issuecomment-2693601981 From jvanek at openjdk.org Mon Mar 3 10:51:11 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 3 Mar 2025 10:51:11 GMT Subject: RFR: 7903671: jcstress: Update buffer tests for JDK-8318966 In-Reply-To: <3-J81IPLLmXlshEicXdBfnLwkMofpNObYWf4qwJcapI=.f0b924f0-fec6-44d1-b4ff-5fbe13f69be9@github.com> References: <3-J81IPLLmXlshEicXdBfnLwkMofpNObYWf4qwJcapI=.f0b924f0-fec6-44d1-b4ff-5fbe13f69be9@github.com> Message-ID: On Wed, 26 Feb 2025 19:27:27 GMT, Ji?? Van?k wrote: > This is another possible fix for https://bugs.openjdk.org/browse/CODETOOLS-7903671 - : jcstress: Update buffer tests for JDK-8318966 (Bug - P4) > This one is attempting Experimental reduction of (0, 8) -> (0, 1) in all affected calls. Brief experiments seesm the change works. But whether it is still testing what it should.. I try to decrypt it, but up to now now proof. > > I have not yet tested all affected tests. That is in progress. Ok. I made a much more deeper look, and consulted with Aph and Thomas, and this fix indeed looks wrong from all points of view. To reduce it to (1,1),except obvious failures, seesm to no longer check the issue. Also it seems that for jdk 23 and up, the correct replacement are direct buffers - which - feel free to correct me - are well covered in jcstress, Thus the correct fix seesm to be https://github.com/openjdk/jcstress/pull/159 or to remove the. Closing this in favour of https://github.com/openjdk/jcstress/pull/159 ------------- PR Comment: https://git.openjdk.org/jcstress/pull/160#issuecomment-2693968932 From jvanek at openjdk.org Mon Mar 3 10:51:11 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 3 Mar 2025 10:51:11 GMT Subject: Withdrawn: 7903671: jcstress: Update buffer tests for JDK-8318966 In-Reply-To: <3-J81IPLLmXlshEicXdBfnLwkMofpNObYWf4qwJcapI=.f0b924f0-fec6-44d1-b4ff-5fbe13f69be9@github.com> References: <3-J81IPLLmXlshEicXdBfnLwkMofpNObYWf4qwJcapI=.f0b924f0-fec6-44d1-b4ff-5fbe13f69be9@github.com> Message-ID: On Wed, 26 Feb 2025 19:27:27 GMT, Ji?? Van?k wrote: > This is another possible fix for https://bugs.openjdk.org/browse/CODETOOLS-7903671 - : jcstress: Update buffer tests for JDK-8318966 (Bug - P4) > This one is attempting Experimental reduction of (0, 8) -> (0, 1) in all affected calls. Brief experiments seesm the change works. But whether it is still testing what it should.. I try to decrypt it, but up to now now proof. > > I have not yet tested all affected tests. That is in progress. This pull request has been closed without being integrated. ------------- PR: https://git.openjdk.org/jcstress/pull/160 From jvanek at openjdk.org Mon Mar 3 10:53:08 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 3 Mar 2025 10:53:08 GMT Subject: RFR: 7903671: jcstress: Update buffer tests for JDK-8318966 In-Reply-To: References: Message-ID: On Wed, 26 Feb 2025 17:50:28 GMT, Ji?? Van?k wrote: > part 1: Detecting jdk of target VM and exuding illegible tests > > This is prequel to full fixing of CODETOOLS-7903671. This PR detects target JDK version and then disables illegible tests. > part 2 will be done in templates of affected tests and logic around generating the classes from them. In meantime this should server. > > The jdk detection will be most likely used anyway. WDYT? If we agree on similar approach, I will create a new bug for this PR only. I made a much more deeper look, and consulted with Aph and Thomas, and it seems that for jdk 23 and up, the correct replacement are direct buffers - which - feel free to correct me - are well covered in jcstress, Thus the buffer tests should be conditionally excluded, as here, or removed. ------------- PR Comment: https://git.openjdk.org/jcstress/pull/159#issuecomment-2693972566 From jvanek at openjdk.org Mon Mar 3 14:12:06 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 3 Mar 2025 14:12:06 GMT Subject: RFR: 7903754: jcstress should die asap - with report - on broken jvm/hw, instead of waiting on kill [v3] In-Reply-To: References: Message-ID: <8RJACFjxxNSThf3OsXSBpiIQlIOgE0mfOiheVGHGIYE=.b83536ef-2d64-4862-ad91-8b67f0d3ab73@github.com> On Mon, 3 Feb 2025 12:42:37 GMT, Ji?? Van?k wrote: >> Initial PoC >> >> It currently show how to set up argument, and how the framework will be terminated. Feedback welcomed. Should be finished soon > > Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: > > Experimental counting of softErrors through property More are on the way! ------------- PR Comment: https://git.openjdk.org/jcstress/pull/157#issuecomment-2694524046 From jvanek at openjdk.org Mon Mar 3 14:12:10 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 3 Mar 2025 14:12:10 GMT Subject: RFR: 7903774: make all tests combinations printing nicer and/or configurable [v9] In-Reply-To: References: <3wZeI91CX_iFefOZJdSxdmZFSyzjd8-w1PJXYufNxrM=.77abf5c8-c5ca-45b9-9b8b-e5c0a7e9b478@github.com> Message-ID: <8CUfI4-uTQHmInndocNUSqaz4_nSxUAwMqthWpamVSM=.a27ed188-47b4-44c1-99ea-7fce1b7f7632@github.com> On Mon, 30 Dec 2024 16:54:02 GMT, Ji?? Van?k wrote: >> This is still WIP, but already on row what [CODETOOLS-7903774](https://bugs.openjdk.org/browse/CODETOOLS-7903774) suggested. >> >> It will be finished once all desired output combinations are included, but already now is doing the usage of listing much more comfortable and code readable. >> >> From: >> >> `TESTS` - as introduced by https://github.com/openjdk/jcstress/pull/149 >> `COMBINATIONS` - as introduced in https://github.com/openjdk/jcstress/pull/149 verbose mode (thus surpassing the `-v` impact >> `ALL_TESTS` - all tests as it was before https://github.com/openjdk/jcstress/pull/149 >> `COMBINATIONS_GROUPED ` - as suggested in https://github.com/openjdk/jcstress/pull/149#discussion_r1668678910 >> `COMBINATIONS_JSON` same as combinations, but a valid json >> `COMBINATIONS_GROUPS` same as COMBINATIONS_GROUPED only instead of enumeration in each group, only count of members will be printed >> >> >> * TESTS are already implemented as ALL_MATCHING >> * COMBINATIONS as ALL_MATCHING_COMBINATIONS >> * ALL_TESTS as ALL >> >> COMBINATIONS_GROUPED, and COMBINATIONS_GROUPS are under development. >> The _JSON variants are tobe decided, but ability to JQL it sounds nice. >> >> Suggestion to better names welcomed. > > Ji?? Van?k has updated the pull request incrementally with two additional commits since the last revision: > > - Implemented proper json listings > > - id can be used both flatten (so equal to plaintext) or properly > strcutured for JQ (default) > - listing can be redirecd to stderr to use with `jq` directly > - ALL now corectly return all tests More are on the way! ------------- PR Comment: https://git.openjdk.org/jcstress/pull/153#issuecomment-2694523857 From jvanek at openjdk.org Wed Mar 5 15:57:28 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Wed, 5 Mar 2025 15:57:28 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses Message-ID: Added warning, when time budget is to small, and final run will run at least two times longer. ------------- Commit messages: - added warning if timebudget is to small - print time budfget also for listing - intitial -tb warning Changes: https://git.openjdk.org/jcstress/pull/161/files Webrev: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=00 Issue: https://bugs.openjdk.org/browse/CODETOOLS-7903750 Stats: 84 lines in 3 files changed: 66 ins; 16 del; 2 mod Patch: https://git.openjdk.org/jcstress/pull/161.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/161/head:pull/161 PR: https://git.openjdk.org/jcstress/pull/161 From galder at openjdk.org Fri Mar 21 10:37:50 2025 From: galder at openjdk.org (Galder =?UTF-8?B?WmFtYXJyZcOxbw==?=) Date: Fri, 21 Mar 2025 10:37:50 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses In-Reply-To: References: Message-ID: On Wed, 5 Mar 2025 15:52:59 GMT, Ji?? Van?k wrote: > Added warning, when time budget is to small, and final run will run at least two times longer. Changes requested by galder (no project role). jcstress-core/src/main/java/org/openjdk/jcstress/JCStress.java line 89: > 87: > 88: private TimeBudget getTimeBudget(ConfigsWithScheduler config) { > 89: if (config == null) { By returning null you'll get an NPE when `printOn` is called in next line. If `config == null` you will get an NPE now. Seems like this change does not change anything. So, without that, I don't see a reason to wrap the TimeBudget instantiation in a private method. jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 152: > 150: boolean print=false; > 151: if (expectedPerTest > budget.milliseconds() * 2l) { > 152: System.out.println(" + +++ FATAL - your tests will never finish as expected. They will run much longer "); I don't think you should assume `System.out`. All these prints should be on a given `PrintStream out`, see `printOn()` method. The formatting of the message does not seem to adhere to other messages. You should see how messages are printed elsewhere in the code and try to use same format? E.g. out.println("FATAL: No matching tests.") Also, about this particular message, if this is fatal jcstress should not run. I don't think this is really happening here. The `print=true` does not cause jcstress not to run. jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 156: > 154: } > 155: if (expectedPerTest * 2 < budget.milliseconds() * 2l) { > 156: System.out.println(" + +++ WARNING - your time budget will not be used. Tests will end much sooner."); See how other warning messages are printed. You should follow similar format e.g. System.out.println("WARNING: Allocation profiling is not available: " + e.getMessage()); jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 160: > 158: } > 159: if (print) { > 160: System.out.println(" | For " + expectedTests + " with concurrency factor of " + getConcurentTestsFactor() If it was me, I would switch these `println` calls for `printf` to make the messages more readable. jcstress-core/src/main/java/org/openjdk/jcstress/infra/grading/ReportUtils.java line 308: > 306: long hours = TimeUnit.MILLISECONDS.toHours(ms); > 307: ms -= TimeUnit.HOURS.toMillis(hours); > 308: Unnecessary jcstress-core/src/main/java/org/openjdk/jcstress/infra/grading/ReportUtils.java line 310: > 308: } > 309: > 310: public static String getNiceMsTimeDate(long ms) { I would not use the word `Nice`, what does it mean here? Something like `formatTimeDate` or `showTimeDate` would be fine for me. jcstress-core/src/main/java/org/openjdk/jcstress/infra/grading/ReportUtils.java line 311: > 309: long minutes = TimeUnit.MILLISECONDS.toMinutes(ms); > 310: ms -= TimeUnit.MINUTES.toMillis(minutes); > 311: Unnecessary ------------- PR Review: https://git.openjdk.org/jcstress/pull/161#pullrequestreview-2705429785 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007280872 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007293040 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007295501 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007297303 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007297747 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007300211 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007297855 From jvanek at openjdk.org Fri Mar 21 12:33:40 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 12:33:40 GMT Subject: RFR: 7903754: jcstress should die asap - with report - on broken jvm/hw, instead of waiting on kill [v4] In-Reply-To: References: Message-ID: > Initial PoC > > It currently show how to set up argument, and how the framework will be terminated. Feedback welcomed. Should be finished soon Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: replaced incorrect System.out by output ------------- Changes: - all: https://git.openjdk.org/jcstress/pull/157/files - new: https://git.openjdk.org/jcstress/pull/157/files/eeaa08e0..ddc606b9 Webrevs: - full: https://webrevs.openjdk.org/?repo=jcstress&pr=157&range=03 - incr: https://webrevs.openjdk.org/?repo=jcstress&pr=157&range=02-03 Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod Patch: https://git.openjdk.org/jcstress/pull/157.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/157/head:pull/157 PR: https://git.openjdk.org/jcstress/pull/157 From jvanek at openjdk.org Fri Mar 21 12:42:01 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 12:42:01 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v2] In-Reply-To: References: Message-ID: > Added warning, when time budget is to small, and final run will run at least two times longer. Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: Replaced System.out by preset out ------------- Changes: - all: https://git.openjdk.org/jcstress/pull/161/files - new: https://git.openjdk.org/jcstress/pull/161/files/8e5b39a5..14913a31 Webrevs: - full: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=01 - incr: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=00-01 Stats: 8 lines in 1 file changed: 0 ins; 0 del; 8 mod Patch: https://git.openjdk.org/jcstress/pull/161.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/161/head:pull/161 PR: https://git.openjdk.org/jcstress/pull/161 From jvanek at openjdk.org Fri Mar 21 12:54:07 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 12:54:07 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v3] In-Reply-To: References: Message-ID: <7Fyx9ZjZmzL_3H2r7GBQ3qGnn7DFH_Vvoc4_uk9U2sI=.a07a3ae5-e116-4c19-93ca-8569ecaf25a0@github.com> > Added warning, when time budget is to small, and final run will run at least two times longer. Ji?? Van?k has updated the pull request incrementally with two additional commits since the last revision: - Used WARNING: and FATAL: instead of +++ WARNING - and +++ FATAL - - renamed getNiceMsTimeDate to formatMsToDaysAndTime ------------- Changes: - all: https://git.openjdk.org/jcstress/pull/161/files - new: https://git.openjdk.org/jcstress/pull/161/files/14913a31..d4ec90db Webrevs: - full: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=02 - incr: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=01-02 Stats: 9 lines in 2 files changed: 0 ins; 0 del; 9 mod Patch: https://git.openjdk.org/jcstress/pull/161.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/161/head:pull/161 PR: https://git.openjdk.org/jcstress/pull/161 From jvanek at openjdk.org Fri Mar 21 12:54:08 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 12:54:08 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v3] In-Reply-To: References: Message-ID: On Fri, 21 Mar 2025 10:29:08 GMT, Galder Zamarre?o wrote: >> Ji?? Van?k has updated the pull request incrementally with two additional commits since the last revision: >> >> - Used WARNING: and FATAL: instead of +++ WARNING - and +++ FATAL - >> - renamed getNiceMsTimeDate to formatMsToDaysAndTime > > jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 152: > >> 150: boolean print=false; >> 151: if (expectedPerTest > budget.milliseconds() * 2l) { >> 152: System.out.println(" + +++ FATAL - your tests will never finish as expected. They will run much longer "); > > I don't think you should assume `System.out`. All these prints should be on a given `PrintStream out`, see `printOn()` method. > > The formatting of the message does not seem to adhere to other messages. You should see how messages are printed elsewhere in the code and try to use same format? E.g. > > > out.println("FATAL: No matching tests.") > > > Also, about this particular message, if this is fatal jcstress should not run. I don't think this is really happening here. The `print=true` does not cause jcstress not to run. Damn, sorry for this. This was changed globa-wide recently, and I had kept it correctly in all prs. Ibviously I had become less vigilant at the end, sorry. Fixed here and also in one more PR which was affected. > jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 160: > >> 158: } >> 159: if (print) { >> 160: System.out.println(" | For " + expectedTests + " with concurrency factor of " + getConcurentTestsFactor() > > If it was me, I would switch these `println` calls for `printf` to make the messages more readable. I had rewrote it to printf, but at the end found the println slightly more readable. It seems println is a bit more used then printf in the prject, so unless yuo insists I will keep println. > jcstress-core/src/main/java/org/openjdk/jcstress/infra/grading/ReportUtils.java line 310: > >> 308: } >> 309: >> 310: public static String getNiceMsTimeDate(long ms) { > > I would not use the word `Nice`, what does it mean here? Something like `formatTimeDate` or `showTimeDate` would be fine for me. Renamed to formatMsToDaysAndTime, wdyt? ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007512874 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007515070 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007510865 From jvanek at openjdk.org Fri Mar 21 12:57:22 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 12:57:22 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v3] In-Reply-To: References: Message-ID: <4p7uYIl1pcgH3ZtjRUh6pvj2hxj12YxpR0rDchaHfcQ=.0eb04a71-af6e-436c-addb-62819088f9c1@github.com> On Fri, 21 Mar 2025 10:30:46 GMT, Galder Zamarre?o wrote: >> Ji?? Van?k has updated the pull request incrementally with two additional commits since the last revision: >> >> - Used WARNING: and FATAL: instead of +++ WARNING - and +++ FATAL - >> - renamed getNiceMsTimeDate to formatMsToDaysAndTime > > jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 156: > >> 154: } >> 155: if (expectedPerTest * 2 < budget.milliseconds() * 2l) { >> 156: System.out.println(" + +++ WARNING - your time budget will not be used. Tests will end much sooner."); > > See how other warning messages are printed. You should follow similar format e.g. > > > System.out.println("WARNING: Allocation profiling is not available: " + e.getMessage()); true. I had adjusted it so it is `+ WARNING: ...` nad same for `FATAL`: + FATAL: - your tests will never finish as expected. They will run much longer | For 169716 with concurrency factor of 1 You have requested/been given time budget of: 01:00:00 | That is ~21 ms per test + +++ However the real time will be converging to: 5d+21:25:48 +++ | You can play with internal properties name(value/eta): | jcstress.timeBudget.defaultPerTestMs(3000ms/5d+21:25:48) | jcstress.timeBudget.minTimeMs(30ms/01:24:51) | jcstress.timeBudget.maxTimeMs(60000ms/117d+20:36:00) | Which are setting up the exact times the individual tests are trying to converage to. + Use with caution! Test run below 100ms is moreover jeopardize the purpose. And will not squeeze the time as you wish. I had kept the leading `+` so it continue to look aligned and is clea where it starts and ends. If you wish me to remove also leading `+ ` then a slightly different approach would need to be taken. ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007524410 From jvanek at openjdk.org Fri Mar 21 13:02:45 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 13:02:45 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v4] In-Reply-To: References: Message-ID: > Added warning, when time budget is to small, and final run will run at least two times longer. Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: Removed unnecessary shortening of MS before next conversion - ms -= TimeUnit.HOURS.toMillis(hours); - ms -= TimeUnit.MINUTES.toMillis(minutes); ------------- Changes: - all: https://git.openjdk.org/jcstress/pull/161/files - new: https://git.openjdk.org/jcstress/pull/161/files/d4ec90db..3d002c0d Webrevs: - full: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=03 - incr: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=02-03 Stats: 3 lines in 2 files changed: 0 ins; 2 del; 1 mod Patch: https://git.openjdk.org/jcstress/pull/161.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/161/head:pull/161 PR: https://git.openjdk.org/jcstress/pull/161 From jvanek at openjdk.org Fri Mar 21 13:02:45 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 13:02:45 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v4] In-Reply-To: References: Message-ID: <4Uw8avtvSDw4DVGrnBQDGs-cmtMLWc1rkuw5TupEVCo=.0c132ab9-74a1-425c-a765-7adff3748b38@github.com> On Fri, 21 Mar 2025 10:32:27 GMT, Galder Zamarre?o wrote: >> Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: >> >> Removed unnecessary shortening of MS before next conversion >> >> - ms -= TimeUnit.HOURS.toMillis(hours); >> - ms -= TimeUnit.MINUTES.toMillis(minutes); > > jcstress-core/src/main/java/org/openjdk/jcstress/infra/grading/ReportUtils.java line 308: > >> 306: long hours = TimeUnit.MILLISECONDS.toHours(ms); >> 307: ms -= TimeUnit.HOURS.toMillis(hours); >> 308: > > Unnecessary Gosh. Right yo are! I missed that completely! TY! > jcstress-core/src/main/java/org/openjdk/jcstress/infra/grading/ReportUtils.java line 311: > >> 309: long minutes = TimeUnit.MILLISECONDS.toMinutes(ms); >> 310: ms -= TimeUnit.MINUTES.toMillis(minutes); >> 311: > > Unnecessary Gosh. Right yo are! I missed that completely! TY! ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007530547 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007530626 From jvanek at openjdk.org Fri Mar 21 13:07:38 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 13:07:38 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v5] In-Reply-To: References: Message-ID: > Added warning, when time budget is to small, and final run will run at least two times longer. Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: Removed unnecesasary NPE check in getTimeBudget The NPE workaround was causing NPE to be only delayed for later ------------- Changes: - all: https://git.openjdk.org/jcstress/pull/161/files - new: https://git.openjdk.org/jcstress/pull/161/files/3d002c0d..8e42d2a4 Webrevs: - full: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=04 - incr: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=03-04 Stats: 3 lines in 1 file changed: 0 ins; 3 del; 0 mod Patch: https://git.openjdk.org/jcstress/pull/161.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/161/head:pull/161 PR: https://git.openjdk.org/jcstress/pull/161 From jvanek at openjdk.org Fri Mar 21 13:12:23 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 13:12:23 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v5] In-Reply-To: References: Message-ID: On Fri, 21 Mar 2025 10:34:26 GMT, Galder Zamarre?o wrote: >> Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: >> >> Removed unnecesasary NPE check in getTimeBudget >> >> The NPE workaround was causing NPE to be only delayed for later > > Changes requested by galder (no project role). hi @galderz ! TYVM for eyeball! I had adjusted to all of your comments, and left few question marks. Hope that is ok. thank you again! (If I missed any, it was not intentional) > jcstress-core/src/main/java/org/openjdk/jcstress/JCStress.java line 89: > >> 87: >> 88: private TimeBudget getTimeBudget(ConfigsWithScheduler config) { >> 89: if (config == null) { > > By returning null you'll get an NPE when `printOn` is called in next line. If `config == null` you will get an NPE now. Seems like this change does not change anything. So, without that, I don't see a reason to wrap the TimeBudget instantiation in a private method. Yah, right you are. I had removed the chck. Still I have kept the emthod extracted. It is not exactly clear from what to construct default TimeBudget. Eg, there are at last two test lists available. The existing tests, and later the expanded multiplied tests. This is based on the second, but is easily to be swapped with first by mistake. I would rather keep the method then duplicate the `new TimeBudget(config.configs.size(), opts.timeBudget());` Maybe rename it to getDefaultTimeBudget ? I omitted it as the budget is set by user xor calculated.. so it is not jsut default, but that one and only one. ------------- PR Comment: https://git.openjdk.org/jcstress/pull/161#issuecomment-2743321016 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2007547387 From jvanek at openjdk.org Fri Mar 21 19:06:20 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 21 Mar 2025 19:06:20 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v5] In-Reply-To: References: Message-ID: On Fri, 21 Mar 2025 12:48:10 GMT, Ji?? Van?k wrote: >> jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 152: >> >>> 150: boolean print=false; >>> 151: if (expectedPerTest > budget.milliseconds() * 2l) { >>> 152: System.out.println(" + +++ FATAL - your tests will never finish as expected. They will run much longer "); >> >> I don't think you should assume `System.out`. All these prints should be on a given `PrintStream out`, see `printOn()` method. >> >> The formatting of the message does not seem to adhere to other messages. You should see how messages are printed elsewhere in the code and try to use same format? E.g. >> >> >> out.println("FATAL: No matching tests.") >> >> >> Also, about this particular message, if this is fatal jcstress should not run. I don't think this is really happening here. The `print=true` does not cause jcstress not to run. > > Damn, sorry for this. This was changed globa-wide recently, and I had kept it correctly in all prs. Obviously I had become less vigilant at the end, sorry. Fixed here and also in one more PR which was affected. > ``` > out.println("FATAL: No matching tests.") > ``` > > Also, about this particular message, if this is fatal jcstress should not run. I don't think this is really happening here. The `print=true` does not cause jcstress not to run. forget to reply this. Yes. it will die correctly later. ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2008176275 From galder at openjdk.org Mon Mar 24 18:01:27 2025 From: galder at openjdk.org (Galder =?UTF-8?B?WmFtYXJyZcOxbw==?=) Date: Mon, 24 Mar 2025 18:01:27 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v5] In-Reply-To: <4p7uYIl1pcgH3ZtjRUh6pvj2hxj12YxpR0rDchaHfcQ=.0eb04a71-af6e-436c-addb-62819088f9c1@github.com> References: <4p7uYIl1pcgH3ZtjRUh6pvj2hxj12YxpR0rDchaHfcQ=.0eb04a71-af6e-436c-addb-62819088f9c1@github.com> Message-ID: On Fri, 21 Mar 2025 12:54:29 GMT, Ji?? Van?k wrote: >> jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 156: >> >>> 154: } >>> 155: if (expectedPerTest * 2 < budget.milliseconds() * 2l) { >>> 156: System.out.println(" + +++ WARNING - your time budget will not be used. Tests will end much sooner."); >> >> See how other warning messages are printed. You should follow similar format e.g. >> >> >> System.out.println("WARNING: Allocation profiling is not available: " + e.getMessage()); > > true. I had adjusted it so it is `+ WARNING: ...` nad same for `FATAL`: > > + FATAL: - your tests will never finish as expected. They will run much longer > | For 169716 with concurrency factor of 1 You have requested/been given time budget of: 01:00:00 > | That is ~21 ms per test > + +++ However the real time will be converging to: 5d+21:25:48 +++ > | You can play with internal properties name(value/eta): > | jcstress.timeBudget.defaultPerTestMs(3000ms/5d+21:25:48) > | jcstress.timeBudget.minTimeMs(30ms/01:24:51) > | jcstress.timeBudget.maxTimeMs(60000ms/117d+20:36:00) > | Which are setting up the exact times the individual tests are trying to converage to. > + Use with caution! Test run below 100ms is moreover jeopardize the purpose. And will not squeeze the time as you wish. > > > I had kept the leading `+` so it continue to look aligned and is clea where it starts and ends. If you wish me to remove also leading `+ ` then a slightly different approach would need to be taken. Hmmm I see, that might be ok for multi-line comments, but if I were you I would look for other multi-line outputs and see what is done there. In JMH multi line comments are just printed as they are, e.g. https://github.com/openjdk/jmh/blob/master/jmh-core/src/main/java/org/openjdk/jmh/runner/format/TextReportFormat.java#L237 >> jcstress-core/src/main/java/org/openjdk/jcstress/TimeBudget.java line 160: >> >>> 158: } >>> 159: if (print) { >>> 160: System.out.println(" | For " + expectedTests + " with concurrency factor of " + getConcurentTestsFactor() >> >> If it was me, I would switch these `println` calls for `printf` to make the messages more readable. > > I had rewrote it to printf, but at the end found the println slightly more readable. It seems println is a bit more used then printf in the prject, so unless yuo insists I will keep println. No, that's fine to leave as is ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2010681998 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2010683305 From galder at openjdk.org Mon Mar 24 18:08:23 2025 From: galder at openjdk.org (Galder =?UTF-8?B?WmFtYXJyZcOxbw==?=) Date: Mon, 24 Mar 2025 18:08:23 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v5] In-Reply-To: References: Message-ID: <0B3pBWUXxZZviy_pnKO1bRbpi2_mapXUQsS_Mkw8ZKY=.0caa2b5c-39d8-4edf-97c2-88c6e35f7870@github.com> On Fri, 21 Mar 2025 13:07:38 GMT, Ji?? Van?k wrote: >> Added warning, when time budget is to small, and final run will run at least two times longer. > > Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: > > Removed unnecesasary NPE check in getTimeBudget > > The NPE workaround was causing NPE to be only delayed for later Just a small comment jcstress-core/src/main/java/org/openjdk/jcstress/JCStress.java line 90: > 88: private TimeBudget getTimeBudget(ConfigsWithScheduler config) { > 89: TimeBudget timeBudget = new TimeBudget(config.configs.size(), opts.timeBudget()); > 90: return timeBudget; Suggestion: return new TimeBudget(config.configs.size(), opts.timeBudget()); ------------- Changes requested by galder (no project role). PR Review: https://git.openjdk.org/jcstress/pull/161#pullrequestreview-2711285299 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2010687475 From jvanek at openjdk.org Mon Mar 24 18:18:55 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 24 Mar 2025 18:18:55 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v5] In-Reply-To: <0B3pBWUXxZZviy_pnKO1bRbpi2_mapXUQsS_Mkw8ZKY=.0caa2b5c-39d8-4edf-97c2-88c6e35f7870@github.com> References: <0B3pBWUXxZZviy_pnKO1bRbpi2_mapXUQsS_Mkw8ZKY=.0caa2b5c-39d8-4edf-97c2-88c6e35f7870@github.com> Message-ID: On Mon, 24 Mar 2025 18:01:51 GMT, Galder Zamarre?o wrote: >> Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: >> >> Removed unnecesasary NPE check in getTimeBudget >> >> The NPE workaround was causing NPE to be only delayed for later > > jcstress-core/src/main/java/org/openjdk/jcstress/JCStress.java line 90: > >> 88: private TimeBudget getTimeBudget(ConfigsWithScheduler config) { >> 89: TimeBudget timeBudget = new TimeBudget(config.configs.size(), opts.timeBudget()); >> 90: return timeBudget; > > Suggestion: > > return new TimeBudget(config.configs.size(), opts.timeBudget()); Sure. TY! ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2010706445 From jvanek at openjdk.org Mon Mar 24 18:18:55 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 24 Mar 2025 18:18:55 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v6] In-Reply-To: References: <4p7uYIl1pcgH3ZtjRUh6pvj2hxj12YxpR0rDchaHfcQ=.0eb04a71-af6e-436c-addb-62819088f9c1@github.com> Message-ID: On Mon, 24 Mar 2025 17:57:59 GMT, Galder Zamarre?o wrote: >> true. I had adjusted it so it is `+ WARNING: ...` nad same for `FATAL`: >> >> + FATAL: - your tests will never finish as expected. They will run much longer >> | For 169716 with concurrency factor of 1 You have requested/been given time budget of: 01:00:00 >> | That is ~21 ms per test >> + +++ However the real time will be converging to: 5d+21:25:48 +++ >> | You can play with internal properties name(value/eta): >> | jcstress.timeBudget.defaultPerTestMs(3000ms/5d+21:25:48) >> | jcstress.timeBudget.minTimeMs(30ms/01:24:51) >> | jcstress.timeBudget.maxTimeMs(60000ms/117d+20:36:00) >> | Which are setting up the exact times the individual tests are trying to converage to. >> + Use with caution! Test run below 100ms is moreover jeopardize the purpose. And will not squeeze the time as you wish. >> >> >> I had kept the leading `+` so it continue to look aligned and is clea where it starts and ends. If you wish me to remove also leading `+ ` then a slightly different approach would need to be taken. > > Hmmm I see, that might be ok for multi-line comments, but if I were you I would look for other multi-line outputs and see what is done there. In JMH multi line comments are just printed as they are, e.g. https://github.com/openjdk/jmh/blob/master/jmh-core/src/main/java/org/openjdk/jmh/runner/format/TextReportFormat.java#L237 Not much similar things to be here. I Wanted to make clear that that lines are bound together, as that paragraph needs some formatting to be readable. I had modified it so it is without it, aligned with original time budget : Time budget: Initial completion estimate: 01:60:3600 left; at Mon, 2025-03-24 20:11:16 Initial test time: 30 ms FATAL: your tests will never finish as expected. They will run much longer For 168708 with concurrency factor of 1 You have requested/been given time budget of: 01:60:3600 That is ~21 ms per test However the real time will be converging to: 5d+20:1235:74124 +++ You can play with internal properties name(value/eta): jcstress.timeBudget.defaultPerTestMs(3000ms/5d+20:1235:74124) jcstress.timeBudget.minTimeMs(30ms/01:84:5061) jcstress.timeBudget.maxTimeMs(60000ms/117d+03:228:13680) Which are setting up the exact times the individual tests are trying to converage to. Use with caution! Test run below 100ms is moreover jeopardize the purpose. And will not squeeze the time as you wish. Attached the non-interactive output stream. Printing the progress line at most every 15000 milliseconds. wdyt? I like the orogonal "table like" slightly more. ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2010703457 From jvanek at openjdk.org Mon Mar 24 18:18:54 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 24 Mar 2025 18:18:54 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v6] In-Reply-To: References: Message-ID: <1Dy2C9PARPmSZ-_o9Il_7BmMtsr1J1d0v4I7q7mTi28=.93444f53-fedf-4b5f-903b-3656bcdc38da@github.com> > Added warning, when time budget is to small, and final run will run at least two times longer. Ji?? Van?k has updated the pull request incrementally with two additional commits since the last revision: - directly return new instance without intermediate variable Co-authored-by: Galder Zamarre?o - Removed table like formatting for time budget warnning ------------- Changes: - all: https://git.openjdk.org/jcstress/pull/161/files - new: https://git.openjdk.org/jcstress/pull/161/files/8e42d2a4..a5d54a41 Webrevs: - full: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=05 - incr: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=04-05 Stats: 12 lines in 2 files changed: 0 ins; 0 del; 12 mod Patch: https://git.openjdk.org/jcstress/pull/161.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/161/head:pull/161 PR: https://git.openjdk.org/jcstress/pull/161 From jvanek at openjdk.org Tue Mar 25 22:19:34 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Tue, 25 Mar 2025 22:19:34 GMT Subject: RFR: 7903819: jcstress do not print structuralised results In-Reply-To: References: Message-ID: On Fri, 10 Jan 2025 15:46:48 GMT, Ji?? Van?k wrote: > Jcstress are generating very good html report, which is however not exactly great for automated comapriosns over various systyems and architectures. This pr is adding junit-like, configurable report. There will be reviewer for sure! ------------- PR Comment: https://git.openjdk.org/jcstress/pull/158#issuecomment-2752673417 From galder at openjdk.org Wed Mar 26 08:45:29 2025 From: galder at openjdk.org (Galder =?UTF-8?B?WmFtYXJyZcOxbw==?=) Date: Wed, 26 Mar 2025 08:45:29 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v6] In-Reply-To: <1Dy2C9PARPmSZ-_o9Il_7BmMtsr1J1d0v4I7q7mTi28=.93444f53-fedf-4b5f-903b-3656bcdc38da@github.com> References: <1Dy2C9PARPmSZ-_o9Il_7BmMtsr1J1d0v4I7q7mTi28=.93444f53-fedf-4b5f-903b-3656bcdc38da@github.com> Message-ID: On Mon, 24 Mar 2025 18:18:54 GMT, Ji?? Van?k wrote: >> Added warning, when time budget is to small, and final run will run at least two times longer. > > Ji?? Van?k has updated the pull request incrementally with two additional commits since the last revision: > > - directly return new instance without intermediate variable > > Co-authored-by: Galder Zamarre?o > - Removed table like formatting for time budget warnning Changes requested by galder (no project role). jcstress-core/src/main/java/org/openjdk/jcstress/JCStress.java line 89: > 87: > 88: private TimeBudget getTimeBudget(ConfigsWithScheduler config) { > 89: TimeBudget timeBudget = new TimeBudget(config.configs.size(), opts.timeBudget()); Remove this line, not necessary now. ------------- PR Review: https://git.openjdk.org/jcstress/pull/161#pullrequestreview-2716299829 PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2013633778 From galder at openjdk.org Wed Mar 26 08:45:29 2025 From: galder at openjdk.org (Galder =?UTF-8?B?WmFtYXJyZcOxbw==?=) Date: Wed, 26 Mar 2025 08:45:29 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v6] In-Reply-To: References: <4p7uYIl1pcgH3ZtjRUh6pvj2hxj12YxpR0rDchaHfcQ=.0eb04a71-af6e-436c-addb-62819088f9c1@github.com> Message-ID: On Mon, 24 Mar 2025 18:13:45 GMT, Ji?? Van?k wrote: >> Hmmm I see, that might be ok for multi-line comments, but if I were you I would look for other multi-line outputs and see what is done there. In JMH multi line comments are just printed as they are, e.g. https://github.com/openjdk/jmh/blob/master/jmh-core/src/main/java/org/openjdk/jmh/runner/format/TextReportFormat.java#L237 > > Not much similar things to be here. I Wanted to make clear that that lines are bound together, as that paragraph needs some formatting to be readable. I had modified it so it is without it, aligned with original time budget : > > Time budget: > Initial completion estimate: 01:60:3600 left; at Mon, 2025-03-24 20:11:16 > Initial test time: 30 ms > FATAL: your tests will never finish as expected. They will run much longer > For 168708 with concurrency factor of 1 You have requested/been given time budget of: 01:60:3600 > That is ~21 ms per test > However the real time will be converging to: 5d+20:1235:74124 +++ > You can play with internal properties name(value/eta): > jcstress.timeBudget.defaultPerTestMs(3000ms/5d+20:1235:74124) > jcstress.timeBudget.minTimeMs(30ms/01:84:5061) > jcstress.timeBudget.maxTimeMs(60000ms/117d+03:228:13680) > Which are setting up the exact times the individual tests are trying to converage to. > Use with caution! Test run below 100ms is moreover jeopardize the purpose. And will not squeeze the time as you wish. > > Attached the non-interactive output stream. > Printing the progress line at most every 15000 milliseconds. > > > wdyt? I like the orogonal "table like" slightly more. I don't have a strong preference for either, but I think it'd be good to be consistent. ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2013632544 From jvanek at openjdk.org Wed Mar 26 14:01:37 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Wed, 26 Mar 2025 14:01:37 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v7] In-Reply-To: References: Message-ID: > Added warning, when time budget is to small, and final run will run at least two times longer. Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: Removed duplicated construcion of timebudget ------------- Changes: - all: https://git.openjdk.org/jcstress/pull/161/files - new: https://git.openjdk.org/jcstress/pull/161/files/a5d54a41..7b68f54b Webrevs: - full: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=06 - incr: https://webrevs.openjdk.org/?repo=jcstress&pr=161&range=05-06 Stats: 1 line in 1 file changed: 0 ins; 1 del; 0 mod Patch: https://git.openjdk.org/jcstress/pull/161.diff Fetch: git fetch https://git.openjdk.org/jcstress.git pull/161/head:pull/161 PR: https://git.openjdk.org/jcstress/pull/161 From jvanek at openjdk.org Wed Mar 26 14:01:37 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Wed, 26 Mar 2025 14:01:37 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v6] In-Reply-To: References: <1Dy2C9PARPmSZ-_o9Il_7BmMtsr1J1d0v4I7q7mTi28=.93444f53-fedf-4b5f-903b-3656bcdc38da@github.com> Message-ID: <_K130dYHda3Wceyaiypd3Pr3XHxvRdGPj5RNN5gb1Ao=.b1c00655-ce74-4bc4-84ea-7f86e25fecfe@github.com> On Wed, 26 Mar 2025 08:42:14 GMT, Galder Zamarre?o wrote: >> Ji?? Van?k has updated the pull request incrementally with two additional commits since the last revision: >> >> - directly return new instance without intermediate variable >> >> Co-authored-by: Galder Zamarre?o >> - Removed table like formatting for time budget warnning > > jcstress-core/src/main/java/org/openjdk/jcstress/JCStress.java line 89: > >> 87: >> 88: private TimeBudget getTimeBudget(ConfigsWithScheduler config) { >> 89: TimeBudget timeBudget = new TimeBudget(config.configs.size(), opts.timeBudget()); > > Remove this line, not necessary now. :facepalm: ------------- PR Review Comment: https://git.openjdk.org/jcstress/pull/161#discussion_r2014211322 From galder at openjdk.org Fri Mar 28 05:25:41 2025 From: galder at openjdk.org (Galder =?UTF-8?B?WmFtYXJyZcOxbw==?=) Date: Fri, 28 Mar 2025 05:25:41 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v7] In-Reply-To: References: Message-ID: On Wed, 26 Mar 2025 14:01:37 GMT, Ji?? Van?k wrote: >> Added warning, when time budget is to small, and final run will run at least two times longer. > > Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: > > Removed duplicated construcion of timebudget Marked as reviewed by galder (no project role). ------------- PR Review: https://git.openjdk.org/jcstress/pull/161#pullrequestreview-2724318046 From galder at openjdk.org Fri Mar 28 05:25:41 2025 From: galder at openjdk.org (Galder =?UTF-8?B?WmFtYXJyZcOxbw==?=) Date: Fri, 28 Mar 2025 05:25:41 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v7] In-Reply-To: References: Message-ID: On Fri, 21 Mar 2025 13:08:55 GMT, Ji?? Van?k wrote: >> Changes requested by galder (no project role). > > hi @galderz ! TYVM for eyeball! I had adjusted to all of your comments, and left few question marks. Hope that is ok. thank you again! (If I missed any, it was not intentional) All good now, thanks @judovana! @shipilev can you give it a final review? ------------- PR Comment: https://git.openjdk.org/jcstress/pull/161#issuecomment-2760222975 From jvanek at openjdk.org Fri Mar 28 09:05:46 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Fri, 28 Mar 2025 09:05:46 GMT Subject: RFR: 7903750: TimeBudget (-tb) does not fulfill its promisses [v7] In-Reply-To: References: Message-ID: On Wed, 26 Mar 2025 14:01:37 GMT, Ji?? Van?k wrote: >> Added warning, when time budget is to small, and final run will run at least two times longer. > > Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: > > Removed duplicated construcion of timebudget tyvm! ------------- PR Comment: https://git.openjdk.org/jcstress/pull/161#issuecomment-2760610202 From jvanek at openjdk.org Mon Mar 31 13:27:41 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 31 Mar 2025 13:27:41 GMT Subject: RFR: 7903671: jcstress: Update buffer tests for JDK-8318966 In-Reply-To: References: Message-ID: On Wed, 26 Feb 2025 17:50:28 GMT, Ji?? Van?k wrote: > part 1: Detecting jdk of target VM and exuding illegible tests > > This is prequel to full fixing of CODETOOLS-7903671. This PR detects target JDK version and then disables illegible tests. > part 2 will be done in templates of affected tests and logic around generating the classes from them. In meantime this should server. > > The jdk detection will be most likely used anyway. WDYT? If we agree on similar approach, I will create a new bug for this PR only. I still have faith! ------------- PR Comment: https://git.openjdk.org/jcstress/pull/159#issuecomment-2766231857 From jvanek at openjdk.org Mon Mar 31 13:27:41 2025 From: jvanek at openjdk.org (=?UTF-8?B?SmnFmcOt?= =?UTF-8?B?IA==?= =?UTF-8?B?VmFuxJtr?=) Date: Mon, 31 Mar 2025 13:27:41 GMT Subject: RFR: 7903889: jcstress: document used properites (and env variables) [v5] In-Reply-To: References: <_id_iOGQYGai8cFr-oaXer0R8UivNlj7-ZavmtRzetU=.1c07c8af-058d-4a9e-b83b-3a23bfb68776@github.com> Message-ID: On Sat, 25 Jan 2025 12:27:14 GMT, Ji?? Van?k wrote: >> The purpose of this PR is to move properties and properties based initializations to single place, and to document them, and to enable printing the listing with the documentation via help. >> >> No Env. vars were found. >> >> The verbose help can be removed, the individual properties with defaults are wrapped to its class. The OptionSpec and OptionFormatter can be used if needed > > Ji?? Van?k has updated the pull request incrementally with one additional commit since the last revision: > > Moved declaration of individual proeprties to ceparate classes by family I still have faith! ------------- PR Comment: https://git.openjdk.org/jcstress/pull/156#issuecomment-2766231968