10-02-2009
Allow me to make myself very clear:
- The lexicon data structure is immutable.
- I have named it the ADTDAWG - Adamovsky Direct Tracking Directed Acyclic Word Graph, contained in 4 arrays of basic number types.
- The character set I have chosen is 14 of the best English letters.
- There is a thread that is responsible for words that begin with each of the letters in the character set.
- The threads all call the same recursive word-discovery function, and then modify a set of global time-stamps to eliminate the duplicate word problem.
- They will never try to modify the same time-stamp because they are responsible for a different subset of the lexicon.
- I used mutexes, and condition variables to communicate when work on the current board should begin, and when it has finished.
- My question is this - Do POSIX multi-threads really allow for an optimal implementation of a micro-parallel algorithm? Or am I doing something wrong, because I am only using 45% of the power of my Quad-Core, when I should be maxing it out?
Do you really want to look at the code that I wrote? At this point, I have every reason to believe that it will introduce mass confusion. It is well written, but it requires an in-depth knowledge of lexicon data structure optimization.
So you suggest that each core has a private cache? I would love to see a block diagram of how the Core2 layout works, so that I could stop spinning my wheels on this problem.
A single thread can score 1277 of the best 23 boards found to date, each with a score around 10769 points for the TWL06 lexicon.
That means that the recursive function is being called many, many, many times per second. Should this fact be a concern?
9 More Discussions You Might Find Interesting
1. AIX
Hi,
what is concept of core in ibm platform?
I want to know how to find out no of core in cpu in aix i.e command
how to find out value of core?
Wheather any specification is there? (1 Reply)
Discussion started by: manoj.solaris
1 Replies
2. AIX
is there command which will display no of core per cpu in aix?
Regads,
Manoj (1 Reply)
Discussion started by: manoj.solaris
1 Replies
3. UNIX for Advanced & Expert Users
Hi,
I want to know if in UNIX is it possible to distinguish between a CPU and a core through any command?
Thanks,
Vineet (1 Reply)
Discussion started by: vineetd
1 Replies
4. Linux Benchmarks
CPU/Speed: AMD Phenom(tm) 9950 Quad-Core Processor
Ram: 3.6 GB
Motherboard: Foxconn 7da-s
Bus:
Cache:
Controller:
Disk:
Load:
Kernel: Linux 2.6.26-2-amd64
Kernel ELF?:
pgms:
==============================================================
BYTE UNIX Benchmarks (Version... (0 Replies)
Discussion started by: migracho
0 Replies
5. AIX
Hi Friends-
What does it mean by 2 cpu cores, 3 cpu cores? Does it mean 2 separate cpus or what is it exactly ?
Kindly explain a bit in detail.
Thanks
panditt (4 Replies)
Discussion started by: deshaipet
4 Replies
6. Solaris
Hi,
I have 2 physical processor UltraSPARC-T2 with 32 virtual processors
I want to execute a perl program on 10 virtual processors.
I try prset command, but I don't see a difference.
psrset -c "created processor set 2" 1 2 3 4 5 6 7 8 9 10"
psrset -b 2 `pgrep program.pl`
Maybe... (8 Replies)
Discussion started by: falloutsam
8 Replies
7. HP-UX
hi every body
i want to know if i have server with hp-ux os if i did "machinfo" i will see no of cpu = for example 16
how can i know this is dual or quad core .
thanks (2 Replies)
Discussion started by: maxim42
2 Replies
8. Solaris
please help
does a cpu/memory module have a firmware ?? and do i need to check it before install the cpu/memory module in the motherboard ??
thnx (2 Replies)
Discussion started by: bahjatm
2 Replies
9. Red Hat
I would like to understand how many number of CPUs and cores do I have on my server based on following out put..
Few observations... Please correct me if I am wrong
Since Physical ID is same CPU is singe
It has 8 virtual processors
Hyper thrading is enabled since no of siblings are... (1 Reply)
Discussion started by: parth_buch
1 Replies
LEARN ABOUT CENTOS
mallex
MALLEX(1) Malaga quick reference MALLEX(1)
NAME
mallex - generate a Malaga run-time lexicon
SYNOPSIS
mallex [-binary|-readable|-prelex] project-file
mallex [-binary|-readable|-prelex] symbol-file rule-file [lexicon-file] [prelex-file]
DESCRIPTION
Malaga is a development environment for natural-language grammars based on the Left-Associative Grammar formalism. Malaga grammars can be
used for automatic morphological and/or syntactic analysis.
The program mallex generates a Malaga run-time lexicon by letting allomorph rules process a base-form lexicon. It can be started in inter-
active mode to help find bugs in the base-form lexicon or in the allomorph rules.
mallex uses the following grammar components:
symbol-file
The symbol-file has the suffix .sym and contains the symbols that are used in the lexicon and/or the allomorph rules.
rule-file
The rule-file has the suffix .all and contains the allomorph rules used to create the runtime-lexicon.
lexicon-file
The lexicon-file has the suffix .lex and contains the base-form lexicon entries that are used as input for the allomorph rules.
prelex-file (optional)
The prelex-file has the suffix .prelex and contains precompiled allomorph entries, which have been created by a former run of mallex
with the option -prelex.
You can give the names of the grammar components as command line arguments, in any order. Alternatively, you can describe these components
in a project-file and use the name of the project file as mallex' single command-line argument. A project file has the suffix .pro.
If no command line options are given, mallex runs in interactive mode, and you can enter commands. The lexicon-file and prelex-file are
not used in interactive mode. If you are not sure about the name of a command, use the command help to get an overview of all mallex com-
mands.
If you want to quit mallex, enter the command quit.
See info Malaga for details.
OPTIONS
-b[inary]
Create the run time lexicon file from the base form lexicon file and the optional prelex file, and save it as a binary run-time lex-
icon, which can be used by malaga.
-h[elp]
Print a help text about mallex' command line arguments and exit.
-p[relex]
Create the run time lexicon, and save it as a binary prelex-file, which can be read in later by another mallex run. output stream.
-r[eadable]
Create the run time lexicon but don't save it, but print its entries in human-readable form on the standard output stream.
-v[ersion]
Print mallex' version number and exit.
AUTHORS
Malaga has been developed by Bjoern Beutel. Numerous other people distributed to it. This manpage was originally written for the Debian
distribution by Antti-Juhani Kaijanaho.
SEE ALSO
malaga(1), malmake(1), malrul(1), malshow(1), malsym(1)
``Malaga 7, User's and Programmer's Manual''. Available in Debian systems via info Malaga, and, if the malaga-doc package is installed, in
various formats (DVI, Postscript, PDF, HTML) under /usr/share/doc/malaga-doc/.
Malaga 26 September 2006 MALLEX(1)