Ga naar inhoud

FileMaker testen door priemgetallen te berekenen


Aanbevolen berichten

Af en toe zit je je te vervelen en dat had ik midden op de Noordzee, onderweg naar het Verenigd Koninkrijk. De verleiding om toch te werken was erg groot, maar ik dat had mezelf verboden en dus bedacht ik maar iets minder zinvols om te doen.

Ik had een vraag gezien van iemand die lijsten met getallen wilde vergelijken en als vanzelf kwam ik op priemgetallen. Zo bedacht ik me hoe die dingen eigenlijk moeten worden berekend, dat had ik nog nooit gedaan.

Eerst even een CF in elkaar gedraaid, maar na 769 kwam er alleen nog maar een vraagteken. Ook nadat ik wat slimmigheid had gemaakt, bleef dat de grens. Je hebt namelijk het resultaat van je vorige uitkomsten nodig om het volgende priemgetal te kunnen berekenen.

Toen maar een scriptje gemaakt, dat hetzelfde doet en dat ging veel beter. Door de manier waarop je een priemgetal uitrekent, gaat het berekenen echter steeds langer duren en zo ontstaat er een grappige wijze om verschillende FileMaker-versies met elkaar te vergelijken. Zie de tabel hieronder van testen van 1 minuut:

Plugins Installed      
Fm version 13 14 15 16
primes calculated 1344 1488 1519 1487
highest prime 11083 12457 12713 12451
Plugins Removed      
primes calculated 1357 1502 1534 1493
highest prime 11197 12569 12889 12497
         
W10 VM        
Fm version 13 14 15 16
primes calculated     1539 1512
highest prime     12917 12647

Wat mij opvalt is dat FM15 beduidend sneller is dan de andere versies. Verder valt op dat in een virtuele versie van Windows 10/64 op dezelfde Mac er meer priemgetallen worden berekend! (daar had ik echter versie 13 en 14 niet op beschikbaar) Dat had ik niet verwacht, temeer daar het programmeren in Windows beduidend trager gaat (in scripteditor en in om het even welke calculatie invoer-box).

Ik heb het bestand bijgevoegd, zodat jullie zelf jullie eigen hardware er op los kunnen laten. Mijn tests zijn gedaan op een Macbook Pro 2016 15-inch 2,9 GHz met MacOS 10.12.6. Ik ben wel benieuwd naar jullie resultaten.

PrimeNumbers.fmp12

Link naar reactie

Nutteloze dingen doen! Dat laat ik me geen twee keer vragen :)

iMac Pro, 3.2 GHz, macOS 10.13.4

FM 16: primes found: 1556, largest prime number: 13049

FM15: primes found: 1579, largest prime number: 13291

FM14: primes found: 1392, largest prime number: 11549

 

rmw

Link naar reactie

Menno, rmw, wat een leuke topic! Ik vertrek seffens, we gaan op motorweekend naar Baiersbronn, en er zal niet gefilemakerd worden tot maandag.

Heel belangrijk vind ik, is dat dit niet lineair is. Als je snelheden wil vergelijken, moet je dit dus kunnen interpreteren.

Misschien kan je je methode publiceren. Ik zie dat op RosettaCode.org de verschillende methodes via verschillende programmeertalen netjes geschikt zijn. We gaan daar met FileMaker geen prijzen winnen, maar het is altijd leuk om het programma eens iets te laten doen wat niet voor de hand ligt.

Link naar reactie
Citaat

Heel belangrijk vind ik, is dat dit niet lineair is. Als je snelheden wil vergelijken, moet je dit dus kunnen interpreteren

Helemaal mee eens en daarom vind ik het ook zo leuk, naarmate je meer priemgetallen hebt berekend, kost het meer tijd en moeite. Ik heb het script een keer een kwartier laten draaien en in die tijd waren er 4156 priemgetallen berekend (max 39499), nog geen 3 maal zoveel als dat er in één minuut werden berekend.

Citaat

Misschien kan je je methode publiceren. Ik zie dat op RosettaCode.org de verschillende methodes via verschillende programmeertalen netjes geschikt zijn. We gaan daar met FileMaker geen prijzen winnen, maar het is altijd leuk om het programma eens iets te laten doen wat niet voor de hand ligt.

Dat is een goed idee en ik heb het meteen opgevolgd, alleen dan op een iets andere pagina, omdat ik eigenlijk de primes_by_trail-methode heb gebruikt. Zie: http://rosettacode.org/wiki/Sequence_of_primes_by_trial_division#FileMaker 

Link naar reactie
  • 1 jaar later...

Doe mee aan dit gesprek

Je kunt dit nu plaatsen en later registreren. Indien je reeds een account hebt, log dan nu in om het bericht te plaatsen met je account.

Gast
Antwoord op deze discussie...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...