You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hama.apache.org by "Thomas Jungblut (JIRA)" <ji...@apache.org> on 2012/06/08 20:29:23 UTC

[jira] [Comment Edited] (HAMA-524) [GSoC 2012] Sparse Matrix-Vector multiplication (SpMV) on Hama

    [ https://issues.apache.org/jira/browse/HAMA-524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13291901#comment-13291901 ] 

Thomas Jungblut edited comment on HAMA-524 at 6/8/12 6:27 PM:
--------------------------------------------------------------

Hi,

had a bit of time so I give you a feedback:

-Your abstract classes should not override methods in interfaces if they don't implement something. 
-You don't need to define methods in interfaces as abstract as they are implicitly
-If you write your own read and write methods, then inherit from the Writable interface and implement it as well

These are some minor things, so it won't affect your implementation too much.

bq.1) Is using of reflection is a good idea to exploit internals of matrix format in time of convertion? Or it could be implemented simpler?

Do you have a concrete case where you want to use reflection?

bq. 2) I want to use HamaConfiguration class to register some custom converters between some matrix formats. Could anyone give me a starting point, where I can learn how Hadoop's configuration works?

I have given you the workflow of a configuration object here: https://issues.apache.org/jira/browse/HAMA-500?focusedCommentId=13253251&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13253251

But basically it is some kind of Map<String,String> which holds information. It is bootstrapped by the usual hama configuration XMLs in classpath, then a client will modify it. Afterwards it will be serialized to XML and distributed through the cluster to be available on each task.

If you want to register something, you can set the default in the configuration XML in hama's conf path and user can override it any time he wants to. Normally you would add helpers to your converter class that gets a configuration and some parameter that you want to set into it (See FileInputFormat.addInputPath for example).
                
      was (Author: thomas.jungblut):
    Hi,

had a bit of time so I give you a feedback:

-Your abstract classes should not override methods in interfaces if they don't implement something. 
-You don't need to define methods in interfaces as abstract as they are implicitly
-If you write your own read and write methods, then inherit from the Writable interface and implement it as well

These are some minor things, so it won't affect your implementation too much.

bq.1) Is using of reflection is a good idea to exploit internals of matrix format in time of convertion? Or it could be implemented simpler?

Do you have a concrete case where you want to use reflection?

2) I want to use HamaConfiguration class to register some custom converters between some matrix formats. Could anyone give me a starting point, where I can learn how Hadoop's configuration works?

I have given you the workflow of a configuration object here: https://issues.apache.org/jira/browse/HAMA-500?focusedCommentId=13253251&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13253251

But basically it is some kind of Map<String,String> which holds information. It is bootstrapped by the usual hama configuration XMLs in classpath, then a client will modify it. Afterwards it will be serialized to XML and distributed through the cluster to be available on each task.

If you want to register something, you can set the default in the configuration XML in hama's conf path and user can override it any time he wants to. Normally you would add helpers to your converter class that gets a configuration and some parameter that you want to set into it (See FileInputFormat.addInputPath for example).
                  
> [GSoC 2012] Sparse Matrix-Vector multiplication (SpMV) on Hama
> --------------------------------------------------------------
>
>                 Key: HAMA-524
>                 URL: https://issues.apache.org/jira/browse/HAMA-524
>             Project: Hama
>          Issue Type: New Feature
>          Components: bsp core, examples, math
>            Reporter: Edward J. Yoon
>            Assignee: Mikalai Parafeniuk
>              Labels: gsoc, gsoc2012, newbie
>
> Implement Efficient and Fast SpMV algorithm which can be widely used in scientiļ¬c computing, financial modeling, information retrieval, and others, using Hama Bulk Synchronous Parallel framework.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira