Tuesday, March 16, 2010

129$ Plug Computer with WiFi/Bluetooth/SD-card/eSATA with Linux/JVM

Recently Marvell has released new plug computer models were released. New models have Wi-Fi and Bluetooth and these Plug sized computers run Linux also can run Java programs and consume approximately 5W of power. Opportunities to for these plug uses are plenty: Home automation, Robotos, Automobiles solutions, etc.

Here is the descriptions of various models:
Model FeaturesCost ($)
SheevaPlug Dev Kit(Original Plug)1.2GHz Sheeva Core CPU, 512 MB DDR2 RAM, 512MB NAND Flash,1x Gb Ethernet, 2x USB 2.0, RTC, GPIO, UART 99
GuruPlug Server - Standard 1.2GHz Sheeva Core CPU, 512 MB DDR2 RAM, 512MB NAND Flash,1 x Gb Ethernet, 2 x USB 2.0, RTC, MicroSD card slot, Wi-Fi 802.11 b/g, Bluetooth and U-SNAP I/O for Home Automation using ZigBee or Z-Wave, Linux Kernel 2.6.32, 7 GPIO 100
GuruPlug Server - PLUS1.2GHz Sheeva Core CPU, 512 MB DDR2 RAM, 512MB NAND Flash,2x Gb Ethernet, 1x eSATA 2.0 port -3Gbps SATAII, 3 x USB 2.0, RTC, MicroSD card slot, Wi-Fi 802.11 b/g, Bluetooth and U-SNAP I/O for Home Automation using ZigBee or Z-Wave, Linux Kernel 2.6.32, 7 GPIO, UART 129
GuruPlug Display1.2GHz Sheeva Core CPU, 512 MB DDR2 RAM, 2 GB NAND Flash,1x Gb Ethernet, 1 HDMI connector or Touch Panel Display, 3 x USB 2.0, RTC, MicroSD card slot, Wi-Fi 802.11 b/g, Bluetooth , Linux Kernel 2.6.28, 7 GPIO179
More info visit Globascale site for GuruPlugs
For old Plug info here
BTW, I am not any way related to Globalscale/ Marvell :)

Wednesday, March 10, 2010

Latest LZO Compression implemented in Java

I have ported the Mini LZO (version 2.03) compression utility in 'c' to pure java.

Initial version of the port is here.

You can try the example using this sample program

You may refer original Java-LZO version (done in way back 1999) here. In the Original only decompression is implemented.

Current ported java-minilzo-jar has implemented following methods: compression, decompression and decompression_safe. At present Compression & decompression of zero-filled-data and random-data is working properly. I will be adding more utilities and API for end-users shortly.

Many many thanks to Markus F.X.J. Oberhumer for his excellent minilzo.c (which is the base for current java implementation)

Monday, March 8, 2010

Command line options of clc.exe (ATI Stream SDK)

Save the following in a shell script

f=$TMP/ccc.txt
clf=$TMP/q2.cl

cat >$clf << EOF
__kernel void helloWorld() {
size_t i = get_global_id(0);
}

EOF


>$f
(for i in a b c d e f g h i j k l m n o p q r s t u v w z y z;do ./clc --$i $clf;done) >>$f 2>&1

grep "\-\-" $f |grep -vE "^Warning:|\""

So by running above script, here are the all possible command line options for clc.exe(ATI Stream OpenCL SDK 2.01)


--anachronisms
--auto_instantiation
--alternative_tokens
--array_new_and_delete
--arg_dep_lookup
--addrspace_cast
--brief_diagnostics
--building_runtime
--bool
--base_assign_op_is_default
--dependencies
--definition_list_file
--dollar
--define_macro
--db_ocl
--db_name
--diag_suppress
--diag_remark
--diag_warning
--diag_error
--diag_once
--display_error_number
--distinct_template_signatures
--designators
--dep_name
--defer_parse_function_templates
--default_calling_convention
--dump_configuration
--debuginfo
--exported_template_file
--exceptions
--error_limit
--error_output
--explicit
--extern_inline
--embedded_c++
--enum_overloading
--early_tiebreaker
--extended_designators
--extended_variadic_macros
--export
--edg_base_dir
--embedded_c
--emit
--force_vtbl
--far_data_pointers
--far_code_pointers
--for_init_diff_warning
--friend_injection
--guiding_decls
--gcc
--g++
--gnu_version
--instantiate
--ii_file
--implicit_include
--include_directory
--inlining
--implicit_typename
--implicit_extern_c_type_conversion
--import_dir
--incl_suffixes
--ignore_std
--list
--long_lifetime_temps
--long_preserving_rules
--late_tiebreaker
--long_long
--list_macros
--llvm_builtin
--module_init
--msvc_target_version
--microsoft
--microsoft_version
--microsoft_bugs
--microsoft_16
--multibyte_chars
--mmmx
--msse
--msse2
--msse3
--mssse3
--msse4.1
--msse4.2
--msse5
--march
--no_line_commands
--no_anachronisms
--no_code_gen
--no_auto_instantiation
--no_implicit_include
--no_warnings
--no_exceptions
--no_use_before_set_warnings
--no_display_error_number
--no_pch_messages
--no_pch_verbose
--no_restrict
--no_microsoft
--no_microsoft_bugs
--near_data_pointers
--near_code_pointers
--no_wchar_t_keyword
--no_alternative_tokens
--no_inlining
--no_svr4
--no_brief_diagnostics
--nonconst_ref_anachronism
--no_nonconst_ref_anachronism
--no_preproc_only
--no_rtti
--no_bool
--no_array_new_and_delete
--no_explicit
--namespaces
--no_namespaces
--no_using_std
--no_remove_unneeded_entities
--no_typename
--no_implicit_typename
--no_special_subscript_cost
--new_for_init
--no_for_init_diff_warning
--no_distinct_template_signatures
--no_guiding_decls
--no_old_specializations
--no_wrap_diagnostics
--no_implicit_extern_c_type_conversion
--no_long_preserving_rules
--no_extern_inline
--no_multibyte_chars
--no_vla
--no_enum_overloading
--nonstd_qualifier_deduction
--no_nonstd_qualifier_deduction
--no_const_string_literals
--no_class_name_injection
--no_arg_dep_lookup
--no_friend_injection
--nonstd_using_decl
--no_nonstd_using_decl
--no_designators
--no_extended_designators
--no_variadic_macros
--no_extended_variadic_macros
--no_compound_literals
--no_base_assign_op_is_default
--no_dep_name
--no_parse_templates
--no_c99
--no_export
--no_stdarg_builtin
--no_gcc
--no_g++
--named_address_spaces
--no_named_address_spaces
--no_embedded_c
--no_trigraphs
--nonstd_default_arg_deduction
--no_nonstd_default_arg_deduction
--no_stdc_zero_in_system_headers
--no_template_typedefs_in_diagnostics
--no_defer_parse_function_templates
--no_uliterals
--no_type_traits_helpers
--no_c++0x
--no_check_concatenations
--noopencl
--old_line_commands
--old_c
--output
--old_style_preprocessing
--old_for_init
--old_specializations
--preprocess
--pch
--pch_messages
--pch_verbose
--pch_dir
--pack_alignment
--preinclude
--preinclude_macros
--pending_instantiations
--parse_templates
--remarks
--restrict
--rtti
--remove_unneeded_entities
--report_gnu_extensions
--strict
--strict_warnings
--signed_chars
--suppress_instantiation_flags
--suppress_vtbl
--short_lifetime_temps
--svr4
--special_subscript_cost
--sys_include
--short_enums
--set_flag
--stdc_zero_in_system_headers
--signed_bit_fields
--single_precision_constant
--trace_includes
--template_info_file
--template_directory
--timing
--typename
--trigraphs
--template_typedefs_in_diagnostics
--type_traits_helpers
--unsigned_chars
--undefine_macro
--use_pch
--using_std
--uliterals
--unsigned_bit_fields
--unicode_source_kind
--version
--vla
--variadic_macros
--varsubscript
--wchar_t_keyword
--wrap_diagnostics
--werror