Recent

Author Topic: Seeking next gen SPEC CPU benchmark candidate  (Read 1167 times)

Van Smith

  • Newbie
  • Posts: 1
Seeking next gen SPEC CPU benchmark candidate
« on: May 30, 2024, 03:22:45 am »
Hi. I'm Van Smith, chair of the SPEC CPU committee. We create computer benchmarks that continue to be widely used in the computing industry, academia, media, and governmental organizations. Our benchmarks mainly target servers and workstations but we are even considering Android compatibility with our next generation product, CPUv8.

The Biden Administration recently published statements declaring an urgent need for a shift to memory safe programming languages in order to curb future cyber security threats. The NSA later followed up with a list of memory safe programming languages which includes Delphi/Object Pascal. See:

https://readwrite.com/the-nsa-list-of-memory-safe-programming-languages-has-been-updated/

I am looking for widely used, compute intensive, command line based, open source, memory safe Free Pascal applications that would make suitable CPUv8 benchmark candidates. It is advantageous if application performance scales with thread resources. If you are willing to create the benchmark, there are monetary awards. See:

https://www.spec.org/cpuv8/

Inclusion in the next generation of SPEC CPU could possibly benefit the Free Pascal/Object Pascal community and there might be Lazarus opportunities as well.

The CPUv8 step process is challenging and only a minor fraction of benchmark submissions will make it into the final release.

My post here is my own initiative and it is not a formal action of the Committee. However, I believe that CPUv8 needs representative memory safe benchmark candidates, and, due to its cross platform support, Free Pascal might be possible for us to integrate into CPUv8.

If you are interested or simply have suggestions, please let me know. Again, this post is my personal initiative. However, it might be impossible for SPEC CPU to support Free Pascal, or the Committee might immediately reject the idea, so keep that in mind at this stage.

Thaddy

  • Hero Member
  • *****
  • Posts: 14859
  • Censorship about opinions does not belong here.
Re: Seeking next gen SPEC CPU benchmark candidate
« Reply #1 on: May 30, 2024, 08:28:07 am »
Well, first of all, there are certain provisions to be made, and I am not by any means complete:
1. Although Pascal is inheritantly safe, it allows for unsafe constructs because it allows for e.g. C style strings, a.k.a. PChars. Code that does not rely on Pascal string types is just as unsafe as C is.
2. It takes, given the modern Pascal syntax, programmer discipline, not compiler discipline, to write safe code, but that can also be done in any given language. A disciplined C programmer can also write safe C code.
3. Although I welcome the mention of Pascal as being safe, this is in my opinion simply not true.

Then again, I am perfectly capable of writing unsafe code - using attributes, unckecked_access - in ADA, the safest of all safe languages)

So I am still a bit bemused why Pascal ranks so high.. It isn't as safe as suggested.

What is true, though, that if a programmer sticks to just native Pascal types, the language is a lot safer than others.

(Also note that most ADA compilers will warn you if you do as I suggested!)

What makes code more safe, in any language, is peer review.
« Last Edit: May 30, 2024, 08:50:49 am by Thaddy »
Remember the Medway disaster..

gidesa

  • Jr. Member
  • **
  • Posts: 87
Re: Seeking next gen SPEC CPU benchmark candidate
« Reply #2 on: May 30, 2024, 05:08:49 pm »
Hello, I think that every initiative to increase the use of FPC/Lazarus (and maybe Delphi) is welcome.
Perhaps Pascal (same as Java, Python, etc.) is memory safe because you have a chance to write safe programs avoiding pointers.
Using C/C++ you simply cannot. Pointers are the essence of C/C++.
« Last Edit: May 30, 2024, 05:11:36 pm by gidesa »

Thaddy

  • Hero Member
  • *****
  • Posts: 14859
  • Censorship about opinions does not belong here.
Re: Seeking next gen SPEC CPU benchmark candidate
« Reply #3 on: May 30, 2024, 07:35:28 pm »
Using C/C++ you simply cannot. Pointers are the essence of C/C++.
That is as untrue as mentioning or suggesting that Pascal is safe.
There are many libraries, including the standard libraries, in C++ that provide for safe memory management in pretty much the same way as FreePascal does: reference counting, safe release etc.
What is true, though, is that in Object Pascal it is part of the language and in C++ it relies on libraries.
For the purpose of this discussion, that difference is futile.
« Last Edit: May 30, 2024, 07:37:07 pm by Thaddy »
Remember the Medway disaster..

PascalDragon

  • Hero Member
  • *****
  • Posts: 5548
  • Compiler Developer
Re: Seeking next gen SPEC CPU benchmark candidate
« Reply #4 on: June 02, 2024, 05:32:12 pm »
Using C/C++ you simply cannot. Pointers are the essence of C/C++.

Modern C++ heavily relies on the STL and the avoidance of raw pointers.

 

TinyPortal © 2005-2018