Re: [HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
2011/1/27 Bruce Momjian br...@momjian.us: Bruce Momjian wrote: Peter Eisentraut wrote: We use small k in postgresql.conf, so pg_test_fsync should use the same. Using kB would be more accurate in any case. OK, done with the attached applied patch. FYI, I had used 'k' because this page suggests that k is 1000 and K is 1024, at least by the JEDEC memory standards: http://en.wikipedia.org/wiki/Kilo I can't find any reference to that on this page? The following does indeed say: URL:http://en.wikipedia.org/wiki/JEDEC_memory_standards quote kilo (K): A multiplier equal to 1,024 [..] The specification notes that these prefixes are included in the document only to reflect common usage. It refers to the IEEE/ASTM SI 10-1997 standard as stating, that this practice frequently leads to confusion and is deprecated. /quote If you want to make the difference explicit, consider using KiB (1024, note the extra i) vs. kB (1000); although doing so is probably not consistent with any other uses in PostgreSQL. URL:http://en.wikipedia.org/wiki/Kibibyte quote The unit symbol for the kibibyte is KiB. The unit was established by the International Electrotechnical Commission (IEC) in 1999 and has been accepted for use by all major standards organizations. /quote Nicolas -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
Nicolas Barbier wrote: 2011/1/27 Bruce Momjian br...@momjian.us: Bruce Momjian wrote: Peter Eisentraut wrote: We use small k in postgresql.conf, so pg_test_fsync should use the same. ?Using kB would be more accurate in any case. OK, done with the attached applied patch. FYI, I had used 'k' because this page suggests that k is 1000 and K is 1024, at least by the JEDEC memory standards: ? ? ? ?http://en.wikipedia.org/wiki/Kilo I can't find any reference to that on this page? The following does indeed say: Sorry, I posed the wrong URL; it should have been: http://en.wikipedia.org/wiki/Bytes#Unit_symbol You can see the chart on the right. However, I agree 'kB' is the best. --- URL:http://en.wikipedia.org/wiki/JEDEC_memory_standards quote kilo (K): A multiplier equal to 1,024 [..] The specification notes that these prefixes are included in the document only to reflect common usage. It refers to the IEEE/ASTM SI 10-1997 standard as stating, that this practice frequently leads to confusion and is deprecated. /quote If you want to make the difference explicit, consider using KiB (1024, note the extra i) vs. kB (1000); although doing so is probably not consistent with any other uses in PostgreSQL. URL:http://en.wikipedia.org/wiki/Kibibyte quote The unit symbol for the kibibyte is KiB. The unit was established by the International Electrotechnical Commission (IEC) in 1999 and has been accepted for use by all major standards organizations. /quote Nicolas -- Bruce Momjian br...@momjian.ushttp://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
Bruce Momjian br...@momjian.us wrote: http://en.wikipedia.org/wiki/Bytes#Unit_symbol You can see the chart on the right. According to which, the JEDEC standard requires KB and the IEC standard requires KiB. What standard led us to use kB instead? It seems to generally mean 1000 instead of 1024. However, I agree 'kB' is the best. Why? -Kevin -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
Kevin Grittner wrote: Bruce Momjian br...@momjian.us wrote: http://en.wikipedia.org/wiki/Bytes#Unit_symbol You can see the chart on the right. According to which, the JEDEC standard requires KB and the IEC standard requires KiB. What standard led us to use kB instead? It seems to generally mean 1000 instead of 1024. I assume Peter did lots of research when he added 'kB' to postgresql.conf. However, I agree 'kB' is the best. Why? No idea. -- Bruce Momjian br...@momjian.ushttp://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
Excerpts from Kevin Grittner's message of jue ene 27 13:22:12 -0300 2011: Bruce Momjian br...@momjian.us wrote: http://en.wikipedia.org/wiki/Bytes#Unit_symbol You can see the chart on the right. According to which, the JEDEC standard requires KB and the IEC standard requires KiB. What standard led us to use kB instead? It seems to generally mean 1000 instead of 1024. http://en.wikipedia.org/wiki/International_System_of_Units#Writing_unit_symbols_and_the_values_of_quantities -- Álvaro Herrera alvhe...@commandprompt.com The PostgreSQL Company - Command Prompt, Inc. PostgreSQL Replication, Consulting, Custom Development, 24x7 support -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
Alvaro Herrera alvhe...@commandprompt.com wrote: Excerpts from Kevin Grittner's message of jue ene 27 13:22:12 -0300 2011: Bruce Momjian br...@momjian.us wrote: http://en.wikipedia.org/wiki/Bytes#Unit_symbol You can see the chart on the right. According to which, the JEDEC standard requires KB and the IEC standard requires KiB. What standard led us to use kB instead? It seems to generally mean 1000 instead of 1024. http://en.wikipedia.org/wiki/International_System_of_Units#Writing_unit_symbols_and_the_values_of_quantities That seems to agree with the other page that k means 10^3, not 2^10 -- or am I missing something? We are treating it as 2^10 in our GUCs, aren't we? -Kevin -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
[HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
We use small k in postgresql.conf, so pg_test_fsync should use the same. Using kB would be more accurate in any case. -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
[HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
Peter Eisentraut wrote: We use small k in postgresql.conf, so pg_test_fsync should use the same. Using kB would be more accurate in any case. OK, done with the attached applied patch. -- Bruce Momjian br...@momjian.ushttp://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + diff --git a/contrib/pg_test_fsync/pg_test_fsync.c b/contrib/pg_test_fsync/pg_test_fsync.c index 23800d6..d075483 100644 *** a/contrib/pg_test_fsync/pg_test_fsync.c --- b/contrib/pg_test_fsync/pg_test_fsync.c *** test_sync(int writes_per_op) *** 175,183 bool fs_warning = false; if (writes_per_op == 1) ! printf(\nCompare file sync methods using one %dK write:\n, XLOG_BLCKSZ_K); else ! printf(\nCompare file sync methods using two %dK writes:\n, XLOG_BLCKSZ_K); printf((in wal_sync_method preference order, except fdatasync\n); printf(is Linux's default)\n); --- 175,183 bool fs_warning = false; if (writes_per_op == 1) ! printf(\nCompare file sync methods using one %dkB write:\n, XLOG_BLCKSZ_K); else ! printf(\nCompare file sync methods using two %dkB writes:\n, XLOG_BLCKSZ_K); printf((in wal_sync_method preference order, except fdatasync\n); printf(is Linux's default)\n); *** static void *** 391,404 test_open_syncs(void) { printf(\nCompare open_sync with different write sizes:\n); ! printf((This is designed to compare the cost of writing 16K\n); printf(in different write open_sync sizes.)\n); ! test_open_sync(16K open_sync write, 16); ! test_open_sync( 8K open_sync writes, 8); ! test_open_sync( 4K open_sync writes, 4); ! test_open_sync( 2K open_sync writes, 2); ! test_open_sync( 1K open_sync writes, 1); } /* --- 391,404 test_open_syncs(void) { printf(\nCompare open_sync with different write sizes:\n); ! printf((This is designed to compare the cost of writing 16kB\n); printf(in different write open_sync sizes.)\n); ! test_open_sync(16kB open_sync write, 16); ! test_open_sync( 8kB open_sync writes, 8); ! test_open_sync( 4kB open_sync writes, 4); ! test_open_sync( 2kB open_sync writes, 2); ! test_open_sync( 1kB open_sync writes, 1); } /* *** test_non_sync(void) *** 517,523 /* * Test a simple write without fsync */ ! printf(\nNon-Sync'ed %dK writes:\n, XLOG_BLCKSZ_K); printf(LABEL_FORMAT, write); fflush(stdout); --- 517,523 /* * Test a simple write without fsync */ ! printf(\nNon-Sync'ed %dkB writes:\n, XLOG_BLCKSZ_K); printf(LABEL_FORMAT, write); fflush(stdout); -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Re: In pg_test_fsync, use K(1024) rather than k(1000) for write size units.
Bruce Momjian wrote: Peter Eisentraut wrote: We use small k in postgresql.conf, so pg_test_fsync should use the same. Using kB would be more accurate in any case. OK, done with the attached applied patch. FYI, I had used 'k' because this page suggests that k is 1000 and K is 1024, at least by the JEDEC memory standards: http://en.wikipedia.org/wiki/Kilo -- Bruce Momjian br...@momjian.ushttp://momjian.us EnterpriseDB http://enterprisedb.com + It's impossible for everything to be true. + -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers