1ARCHCODE(3PVM) PVM Version 3.4 ARCHCODE(3PVM)
2
3
4
6 pvm_archcode - Returns the data representation code for a PVM architec‐
7 ture name.
8
9
11 C int cod = pvm_archcode( char *arch )
12
13 Fortran call pvmfarchcode( arch, cod )
14
15
17 arch Character string containing the architecture name.
18
19 cod Integer returning architecture code.
20
22 The routine pvm_archcode returns an integer given an architecture name.
23 The code returned identifies machines with compatible binary data for‐
24 mats. For example, SUN4 and RS6K have the same code, while ALPHA has a
25 different one (because a few datatypes have different sizes). This
26 lets you know when you can get away with using PvmDataRaw instead of
27 PvmDataDefault encoding to pass messages between tasks on two machines.
28
29 Naturally, you shouldn't assume the values returned by pvm_archcode are
30 etched in stone; the numbers have no intrinsic meaning except that if
31 two different arch names map to the same value then they're compatible.
32
33 This routine is actually obsolete in the sense that the architecture
34 codes returned are already available in the hi_dsig field of the
35 pvmhostinfo structure returned by pvm_config(), as shown in the below
36 example. The routine is maintained for backwards compatibility only.
37
38
39
41 C:
42 struct pvmhostinfo *hip;
43 int i;
44
45 pvm_config((int *)0, (int *)0, &hip);
46 i = pvm_archcode(hip[0].hi_arch);
47
48 /* or you could just do: i = hip[0].hi_dsig; */
49
50 Fortran:
51 CALL PVMFARCHCODE( 'RS6K', k )
52
53
55 On success, pvm_archcode returns a positive integer data signature.
56
57 The following error conditions can be returned as well:
58
59 PvmBadParam
60 giving an invalid architecture name.
61
62 PvmNotFound
63 there is no host with the given architecture name in the current
64 virtual machine configuration.
65
66 PvmSysErr
67 pvmd not responding.
68
70 pvm_config(3PVM), pvm_initsend(3PVM), pvm_notify(3PVM),
71 pvm_tasks(3PVM), pvm_tidtohost(3PVM)
72
73
74
75 15 March, 1994 ARCHCODE(3PVM)